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
- Remove trailing slashes from OIDC URLs in AWS IAM auth guide
- Add IAM policy example for scoping to specific tables
- Add Terraform example with circular dependency workaround
- Add troubleshooting section for common IAM/OIDC issues
Copy file name to clipboardExpand all lines: site/docs/guides/iam-auth/aws.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,16 +23,16 @@ To find the correct issuer value:
23
23
24
24
3. Find the **Data Planes** table and make sure you're viewing the correct tab for your data plane (either **public** or **private**).
25
25
26
-
4. Copy the value from the **IAM OIDC** column. This should look something like: `https://openid.estuary.dev/your-data-plane-identifier.dp.estuary-data.com/`
26
+
4. Copy the value from the **IAM OIDC** column. This should look something like: `https://openid.estuary.dev/your-data-plane-identifier.dp.estuary-data.com`
27
27
28
28
For example, these are the issuer values for a few common public data planes:
29
29
30
30
| Data Plane | Issuer |
31
31
|---|---|
32
-
| US east-1 AWS data plane |https://openid.estuary.dev/aws-us-east-1-c1.dp.estuary-data.com/|
33
-
| US central-1 GCP data plane |https://openid.estuary.dev/gcp-us-central1-c2.dp.estuary-data.com/|
34
-
| US west-2 AWS data plane |https://openid.estuary.dev/aws-us-west-2-c1.dp.estuary-data.com/|
35
-
| EU west-1 AWS data plane |https://openid.estuary.dev/aws-eu-west-1-c1.dp.estuary-data.com/|
32
+
| US east-1 AWS data plane |https://openid.estuary.dev/aws-us-east-1-c1.dp.estuary-data.com|
33
+
| US central-1 GCP data plane |https://openid.estuary.dev/gcp-us-central1-c2.dp.estuary-data.com|
34
+
| US west-2 AWS data plane |https://openid.estuary.dev/aws-us-west-2-c1.dp.estuary-data.com|
35
+
| EU west-1 AWS data plane |https://openid.estuary.dev/aws-eu-west-1-c1.dp.estuary-data.com|
Copy file name to clipboardExpand all lines: site/docs/reference/Connectors/capture-connectors/amazon-dynamodb.md
+105Lines changed: 105 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -52,6 +52,85 @@ To use this connector, you'll need:
52
52
}
53
53
```
54
54
55
+
**Example IAM Policy for Specific Tables:**
56
+
57
+
If you want to limit access to specific tables rather than all tables, use this policy. Note that `ListTables` and `DescribeTable` require the `table/*` resource pattern and cannot be scoped to specific tables.
When using Terraform to create both the OIDC provider and IAM role, you may encounter a circular dependency since the OIDC provider needs the role ARN as its audience, but the role needs the OIDC provider ARN in its trust policy. Use `locals` to construct the role ARN before creating it:
Replace `1234567890abcdef.dp.estuary-data.com` with your data plane identifier from the Estuary dashboard.
133
+
55
134
- AWS Credentials. One of the following types:
56
135
- The AWS **access key** and **secret access key** for the user. See the [AWS blog](https://aws.amazon.com/blogs/security/wheres-my-secret-access-key/) for help finding these credentials.
57
136
- To authenticate using an AWS Role, you'll need the **region** and the **role arn**. Follow the steps in the [AWS IAM guide](/guides/iam-auth/aws.md) to setup the role.
@@ -121,3 +200,29 @@ captures:
121
200
Your capture definition may be more complex, with additional bindings for each DynamoDB table.
122
201
123
202
[Learn more about capture definitions.](../../../concepts/captures.md#specification)
203
+
204
+
## Troubleshooting
205
+
206
+
### "No OpenIDConnect provider found"
207
+
208
+
The OIDC provider URL doesn't match what AWS expects. Verify:
209
+
- The URL in AWS matches exactly what's shown in the Estuary connector config
210
+
- Check for trailing slash mismatches (the URL should not have a trailing slash)
211
+
212
+
### "Not authorized to perform sts:AssumeRoleWithWebIdentity"
213
+
214
+
The trust policy conditions don't match. Verify:
215
+
- The `aud` claim matches your role ARN exactly
216
+
- The `sub` claim pattern matches your Estuary tenant prefix
217
+
- Wait 1-2 minutes after creating or updating the OIDC provider for AWS propagation
218
+
219
+
### Tables not appearing in bindings
220
+
221
+
If your DynamoDB tables don't appear when configuring the capture:
222
+
- Verify DynamoDB Streams is enabled on the table
223
+
- Verify the stream view type is set to "New and old images"
224
+
- Verify your IAM policy includes `ListTables` permission on `table/*`
The `ListTables` action requires the `table/*` resource pattern. You cannot scope this permission to specific table names—it must have access to list all tables in the region.
0 commit comments