我正在使用boto3进行AWS上的情感分析。
我在使用'DataAccessRoleArn'参数时遇到问题。插入什么样的价值?我需要它的格式或一些示例。
添加到以上答案是,它需要具有IAM角色的ARN,才能授予Amazon Comprehend对您的输入数据的读取访问权限。
但是ARN应该采用以下格式,带有帐号,并且不是唯一的ID:
arn:aws:iam::<account number>:role/<role_name>
对于DataAccessRoleArn,您应该添加要分配的iam角色的地址。您可以在角色内的IAM页面中找到arn,选择角色后即可找到角色arn。
角色arn的格式是:
arn:aws:iam::<account_number>:role/<role_name>
我想提供更完整的参考。
从boto3 docs on Comprehend开始,DataAccessRoleArn
是描述为的字符串:
DataAccessRoleArn(string)-[必需]
AWS Identity and Management的Amazon资源名称(ARN)(IAM)角色,授予Amazon Comprehend对您的输入的读取权限数据。
从AWS IAM ARNs参考中,ARN的形式为:
arn:partition:service:region:account:resource
对于IAM角色,通常采用以下形式:
arn:aws:iam::123456789012:role/<role name>
where `region` is left blank for IAM resources
and `123456789012` is the AWS account ID
要获取ARN,您只需登录IAM控制台,然后打开包含Comprehend policy的角色页面。这是一个屏幕截图(摘自AWS文档):
或者,如果您使用的是AWS CLI,也可以使用get-role命令获取有关IAM角色(包括ARN)的信息:
$ aws iam get-role --role-name Test-Role
{
"Role": {
"Description": "Test Role",
...
"Arn": "arn:aws:iam::123456789012:role/Test-Role"
}
}