知识库评测作业的服务角色要求
要创建知识库评测作业,必须指定服务角色。您附加到角色的策略将授予 Amazon Bedrock 访问您账户中资源的权限,并允许 Amazon Bedrock 执行以下操作:
要创建自定义服务角色,请参阅《IAM 用户指南》中的使用自定义信任策略创建角色。
访问 Amazon S3 所需的 IAM 操作
以下示例策略将授予对满足以下两种情况的 S3 存储桶的访问权限:
- JSON
-
-
{
"Version":"2012-10-17",
"Statement":
[
{
"Sid": "AllowAccessToCustomDatasets",
"Effect": "Allow",
"Action":
[
"s3:GetObject",
"s3:ListBucket"
],
"Resource":
[
"arn:aws:s3:::my_customdataset1_bucket",
"arn:aws:s3:::my_customdataset1_bucket/myfolder",
"arn:aws:s3:::my_customdataset2_bucket",
"arn:aws:s3:::my_customdataset2_bucket/myfolder"
]
},
{
"Sid": "AllowAccessToOutputBucket",
"Effect": "Allow",
"Action":
[
"s3:GetObject",
"s3:ListBucket",
"s3:PutObject",
"s3:GetBucketLocation",
"s3:AbortMultipartUpload",
"s3:ListBucketMultipartUploads"
],
"Resource":
[
"arn:aws:s3:::my_output_bucket",
"arn:aws:s3:::my_output_bucket/myfolder"
]
}
]
}
必要的 Amazon Bedrock IAM 操作
您还需创建策略来允许 Amazon Bedrock 执行以下操作:
-
调用您计划为以下任务指定的模型:
对于策略中的 Resource 密钥,您必须指定至少一个自己可以访问的模型的 ARN。要使用通过客户自主管理型 KMS 密钥加密的模型,您必须向 IAM 服务角色策略添加所需的 IAM 操作和资源。您还必须将服务角色添加到 AWS KMS 密钥政策中。
-
调用 Retrieve 和 RetrieveAndGenerate API 操作。请注意,在控制台的自动角色创建中,我们会同时授予对 Retrieve 和 RetrieveAndGenerate API 操作的权限,无论您选择为该作业评估什么操作。这样做可以提高角色的灵活性和可重用性。但是,为了增强安全性,自动创建的角色会与单个知识库实例绑定。
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Sid": "AllowSpecificModels",
"Effect": "Allow",
"Action": [
"bedrock:InvokeModel",
"bedrock:InvokeModelWithResponseStream",
"bedrock:CreateModelInvocationJob",
"bedrock:StopModelInvocationJob",
"bedrock:GetProvisionedModelThroughput",
"bedrock:GetInferenceProfile",
"bedrock:GetImportedModel"
],
"Resource": [
"arn:aws:bedrock:us-east-1::foundation-model/*",
"arn:aws:bedrock:us-east-1:123456789012:inference-profile/*",
"arn:aws:bedrock:us-east-1:123456789012:provisioned-model/*",
"arn:aws:bedrock:us-east-1:123456789012:imported-model/*",
"arn:aws:bedrock:us-east-1:123456789012:application-inference-profile/*"
]
},
{
"Sid": "AllowKnowledgeBaseAPis",
"Effect": "Allow",
"Action": [
"bedrock:Retrieve",
"bedrock:RetrieveAndGenerate"
],
"Resource": [
"arn:aws:bedrock:us-east-1:123456789012:knowledge-base/knowledge-base-id"
]
}
]
}
服务主体要求
还必须指定将 Amazon Bedrock 定义为服务主体的信任策略,此策略允许 Amazon Bedrock 代入该角色。需要使用通配符 (*) 模型评估作业 ARN,这样 Amazon Bedrock 才能在您的 AWS 账户中创建模型评估作业。
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Sid": "AllowBedrockToAssumeRole",
"Effect": "Allow",
"Principal": {
"Service": "bedrock.amazonaws.com"
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"aws:SourceAccount": "123456789012"
},
"ArnEquals": {
"aws:SourceArn": "arn:aws:bedrock:us-east-1:123456789012:evaluation-job/*"
}
}
}
]
}