gpt4 book ai didi

aws-lambda - 以编程方式从Lambda上下文中获取帐户ID

转载 作者:行者123 更新时间:2023-12-03 13:43:56 27 4
gpt4 key购买 nike

我可以使用

com.amazonaws.services.lambda.runtime.Context;

对象,并通过扩展调用函数Arn。 arn包含lambda所在的帐户ID。

我的问题很简单,我想要最干净的方法从中提取帐户ID。

我在看

com.amazon.arn.ARN;

它有很多东西,但是没有帐户ID(我认为这是因为并非所有的arn都有帐户ID?)

我想干净地提取帐户ID,而不用解析字符串。

最佳答案

如果您的lambda用作API网关代理lambda,则您可以访问event.requestContext.accountId(其中event是处理函数的第一个参数)。
否则,您将必须拆分ARN。
AWS documentation about ARN formats中,以下是有效的Lambda ARN格式:

arn:aws:lambda:region:account-id:function:function-name

arn:aws:lambda:region:account-id:function:function-name:alias-name

arn:aws:lambda:region:account-id:function:function-name:version

arn:aws:lambda:region:account-id:event-source-mappings:event-source-mapping-id


在所有情况下, account-id是ARN中的第五项(将 :处理为分隔符)。因此,您可以执行以下操作:
String accountId = arn.split(":")[4];

关于aws-lambda - 以编程方式从Lambda上下文中获取帐户ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49163151/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com