API Gateway DynamoDB 跨账户集成
API Gateway DynamoDB cross account integration
我正在尝试与 API 网关 到 DynamoDB 进行直接集成。如果两者都在同一个帐户中,则效果很好,我在集成方面没有遇到任何问题。
如果它们在不同的帐户中,我无法弄清楚如何向 API 网关发出信号,表明 dynamo table 在不同的帐户中。
此设置有效:
- 账户 111111111:API 网关
- 账户 111111111:Dynamo 数据库
此设置不:
- 账户 111111111:API 网关
- 账户 222222222:Dynamo 数据库
在 docs 中,他们指定了 uri 集成应该是什么样子:
arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}
但是我没有看到where/if我可以指定现有table的帐户id。
发电机的 arn table 通常看起来像这样,arn:aws:dynamodb:region:account-id:table/table-name
,所以如果我可以提供 arn,这应该是合理的,但这似乎行不通。
arn:aws:apigateway:us-east-1:dynamodb:action/Query
我的问题是:
- 是否可以与 API Gateway 和 Dynamo
进行跨账户集成
- 如何在 API 集成中指定帐户 ID?
- 如果我不能,有没有办法以某种方式在查询正文中指定帐户 ID?
我了解到无法与 API 网关进行跨账户集成,因为 API 网关无法承担跨账户角色。解决方案是创建一个 lambda,它可以承担跨账户角色。
我正在尝试与 API 网关 到 DynamoDB 进行直接集成。如果两者都在同一个帐户中,则效果很好,我在集成方面没有遇到任何问题。
如果它们在不同的帐户中,我无法弄清楚如何向 API 网关发出信号,表明 dynamo table 在不同的帐户中。
此设置有效:
- 账户 111111111:API 网关
- 账户 111111111:Dynamo 数据库
此设置不:
- 账户 111111111:API 网关
- 账户 222222222:Dynamo 数据库
在 docs 中,他们指定了 uri 集成应该是什么样子:
arn:aws:apigateway:{region}:{subdomain.service|service}:path|action/{service_api}
但是我没有看到where/if我可以指定现有table的帐户id。
发电机的 arn table 通常看起来像这样,arn:aws:dynamodb:region:account-id:table/table-name
,所以如果我可以提供 arn,这应该是合理的,但这似乎行不通。
arn:aws:apigateway:us-east-1:dynamodb:action/Query
我的问题是:
- 是否可以与 API Gateway 和 Dynamo 进行跨账户集成
- 如何在 API 集成中指定帐户 ID?
- 如果我不能,有没有办法以某种方式在查询正文中指定帐户 ID?
我了解到无法与 API 网关进行跨账户集成,因为 API 网关无法承担跨账户角色。解决方案是创建一个 lambda,它可以承担跨账户角色。