You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: add DuckDB restricted execution policies and new connection settings (#306)
Document filesystemPolicy/networkPolicy sandbox options for DuckDB,
BigQuery serviceAccountKey inline option, and new Snowflake schema
sampling settings (schemaSampleRowLimit, schemaSampleFullScanMaxBytes,
privateKey).
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
- `networkPolicy: "closed"` — forces `enableExternalAccess=false`, blocks `httpfs` and `INSTALL`, rejects remote `databasePath` and `motherDuckToken`.
93
+
94
+
The reviewed strict recipe uses both; each axis can also stand alone when an external boundary covers the other.
95
+
96
+
```json
97
+
{
98
+
"connections": {
99
+
"duckdb": {
100
+
"is": "duckdb",
101
+
"databasePath": "data/app.duckdb",
102
+
"workingDirectory": {"config": "rootDirectory"},
103
+
"filesystemPolicy": "sandboxed",
104
+
"networkPolicy": "closed"
105
+
}
106
+
}
107
+
}
108
+
```
109
+
110
+
Policies set a floor, not a ceiling. `allowedDirectories` and `tempDirectory` can be set explicitly to customize the sandbox. Other policy-controlled settings accept matching values but reject weaker ones — connection creation fails closed. `setupSQL`, `additionalExtensions`, `motherDuckToken`, and remote `databasePath` are incompatible with a restricted policy; to use any of them, drop the policy and configure DuckDB directly. Policies do not set resource limits — configure `threads`, `memoryLimit`, timeouts, and host quotas separately.
72
111
73
112
### `bigquery` — Google BigQuery
74
113
75
114
| Parameter | Type | Description |
76
115
|---|---|---|
77
116
| `projectId` | string | GCP project ID |
78
117
| `serviceAccountKeyPath` | file | Path to service account JSON key |
118
+
| `serviceAccountKey` | json | Service account key as a JSON object (alternative to file path) |
79
119
| `location` | string | Dataset location |
80
120
| `maximumBytesBilled` | string | Byte billing cap |
81
121
| `timeoutMs` | string | Query timeout in ms |
@@ -132,9 +172,12 @@ Authentication: provide either `token` or the `oauthClientId` + `oauthClientSecr
Snowflake also supports TOML configuration at `~/.snowflake/connections.toml`. See [Snowflake connection configuration](https://docs.snowflake.com/en/developer-guide/python-connector/python-connector-connect#connecting-using-the-connections-toml-file) for details.
0 commit comments