无服务器部署到不同的 AWS 账户
Serverless Deploy to Different AWS Accounts
我有一个无服务器项目,其中包含大量 terraform 资源创建。
我想在 一个 AWS 账户 中部署 Lambda 函数,作为无服务器部署的一部分,它可以创建 API 网关端点(指向 lambda 函数)。
我想 API 在 另一个 AWS 账户 中创建网关。是否有可能纯粹在无服务器中进行。如果不是,有哪些选择?
尝试 EventBridge 方法。您应该能够安全地访问函数,而无需创建复杂的双账户 ARN、策略脚本和权限:
const AWS = require('aws-sdk');
function notifyMarketingTeam(email) {
const eventBridge = new AWS.EventBridge({key:XXXXX,secret:XXXX region: 'us-east-1' });
return eventBridge.putEvents({
Entries: [
{
EventBusName: 'marketing',
Source: 'acme.newsletter.campaign',
DetailType: 'UserSignUp',
Detail: `{ "E-Mail": "${email}" }`,
},
]
}).promise()
}
我有一个无服务器项目,其中包含大量 terraform 资源创建。 我想在 一个 AWS 账户 中部署 Lambda 函数,作为无服务器部署的一部分,它可以创建 API 网关端点(指向 lambda 函数)。
我想 API 在 另一个 AWS 账户 中创建网关。是否有可能纯粹在无服务器中进行。如果不是,有哪些选择?
尝试 EventBridge 方法。您应该能够安全地访问函数,而无需创建复杂的双账户 ARN、策略脚本和权限:
const AWS = require('aws-sdk');
function notifyMarketingTeam(email) {
const eventBridge = new AWS.EventBridge({key:XXXXX,secret:XXXX region: 'us-east-1' });
return eventBridge.putEvents({
Entries: [
{
EventBusName: 'marketing',
Source: 'acme.newsletter.campaign',
DetailType: 'UserSignUp',
Detail: `{ "E-Mail": "${email}" }`,
},
]
}).promise()
}