![](/img/trans.png)
[英]Python boto3 how to parse role_arn from AWS_CONFIG_FILE?
[英]Is it possible to set ARN parameter role_arn in the Java SDK?
我可以使用以下配置和 AWS CLI 訪問 SQS:
% cat .aws/config
[default]
region = eu-central-1
output = json
[profile dev]
region = eu-central-1
role_arn = arn:aws:iam::<id>:role/<user>
source_profile = default
% cat .aws/credentials
[default]
aws_access_key_id = <key>
aws_secret_access_key = <secret_key>
% aws sqs list-queues --profile dev
{
"QueueUrls": [
...
]
}
我需要指定role_arn
參數才能訪問隊列。 問題是在 AWS Java SDK 2(版本 2.15.69)中我不知道如何設置role_arn
參數,至少不會自動加載。 我到目前為止的代碼如下所示:
import software.amazon.awssdk.regions.Region
import software.amazon.awssdk.services.sqs.SqsClient
import software.amazon.awssdk.services.sqs.model.SendMessageRequest
client = SqsClient.builder().region(Region.EU_CENTRAL_1).build()
req = SendMessageRequest.builder().queueUrl(url).messageBody(msg).build()
client.sendMessage(req)
執行最后一行時,我收到此錯誤消息: Access to the resource https://sqs.eu-central-1.amazonaws.com/ is denied.
基本上,它沒有加載role_arn
。 是否可以在 Java 片段中指定 ARN,如果可以,如何指定?
你必須設置環境變量AWS_PROFILE="dev"
。
現在在我看來default
的aws 配置文件是由您的 java 代碼選擇的,並且default
的 aws 配置文件沒有您嘗試訪問的 SQS 所需的訪問權限。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.