AWS Amazon Bedrock 的托管政策 - Amazon Bedrock

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWS Amazon Bedrock 的托管政策

要向用户、群组和角色添加权限,使用 AWS 托管策略比自己编写策略要容易得多。创建IAM客户托管策略以仅向您的团队提供他们所需的权限需要时间和专业知识。要快速入门,您可以使用我们的 AWS 托管策略。这些策略涵盖常见使用案例,可在您的 AWS 账户中使用。有关 AWS 托管策略的更多信息,请参阅《IAM用户指南》中的AWS 托管策略

AWS 服务维护和更新 AWS 托管策略。您无法更改 AWS 托管策略中的权限。服务偶尔会向 AWS 管理型策略添加额外权限以支持新特征。此类更新会影响附加策略的所有身份(用户、组和角色)。当启动新特征或新操作可用时,服务最有可能会更新 AWS 管理型策略。服务不会从 AWS 托管策略中移除权限,因此策略更新不会破坏您的现有权限。

此外,还 AWS 支持跨多个服务的工作职能的托管策略。例如,ReadOnlyAccess AWS 托管策略提供对所有 AWS 服务和资源的只读访问权限。当服务启动一项新功能时, AWS 会为新操作和资源添加只读权限。有关工作职能策略的列表和说明,请参阅《IAM用户指南》中的工作职能AWS 托管策略

AWS 托管策略: AmazonBedrockFullAccess

您可以将该AmazonBedrockFullAccess策略附加到您的IAM身份。

此策略可授予管理权限,允许用户创建、读取、更新和删除 Amazon Bedrock 资源。

注意

微调和访问模型需要额外的权限。有关更多信息,请参阅 允许访问第三方模型订阅访问训练和验证文件以及在 S3 中写入输出文件的权限

权限详细信息

该策略包含以下权限:

  • ec2(Amazon Elastic Compute Cloud)— 允许描述VPCs、子网和安全组的权限。

  • iam(AWS Identity and Access Management)— 允许委托人传递IAM角色,但仅允许将包含 “Amazon Bedrock” 的角色传递给亚马逊 Bedrock 服务。对于 Amazon Bedrock 操作,这些权限仅限于 bedrock.amazonaws.com

  • kms(AWS 密钥管理服务)-允许委托人描述 AWS KMS 密钥和别名。

  • bedrock (Amazon Bedrock) – 允许主体读取和写入 Amazon Bedrock 控制面板和运行时服务中的所有操作。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "BedrockAll", "Effect": "Allow", "Action": [ "bedrock:*" ], "Resource": "*" }, { "Sid": "DescribeKey", "Effect": "Allow", "Action": [ "kms:DescribeKey" ], "Resource": "arn:*:kms:*:::*" }, { "Sid": "APIsWithAllResourceAccess", "Effect": "Allow", "Action": [ "iam:ListRoles", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups" ], "Resource": "*" }, { "Sid": "PassRoleToBedrock", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::*:role/*AmazonBedrock*", "Condition": { "StringEquals": { "iam:PassedToService": [ "bedrock.amazonaws.com" ] } } } ] }

AWS 托管策略: AmazonBedrockReadOnly

您可以将该AmazonBedrockReadOnly策略附加到您的IAM身份。

此策略可授予只读权限,允许用户查看 Amazon Bedrock 中的所有资源。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AmazonBedrockReadOnly", "Effect": "Allow", "Action": [ "bedrock:GetFoundationModel", "bedrock:ListFoundationModels", "bedrock:GetModelInvocationLoggingConfiguration", "bedrock:GetProvisionedModelThroughput", "bedrock:ListProvisionedModelThroughputs", "bedrock:GetModelCustomizationJob", "bedrock:ListModelCustomizationJobs", "bedrock:ListCustomModels", "bedrock:GetCustomModel", "bedrock:ListTagsForResource", "bedrock:GetFoundationModelAvailability" ], "Resource": "*" } ] }

AWS 托管策略: AmazonBedrockStudioPermissionsBoundary

注意
  • 此策略是权限边界。权限边界设置基于身份的策略可以向委托人授予的最大权限。IAM您不应自行使用和附加 Amazon Bedrock Studio 权限边界策略。Amazon Bedrock Studio 权限边界策略只能附加到亚马逊 Bedrock Studio 托管的角色。有关权限边界的更多信息,请参阅《IAM用户指南》中的IAM实体的权限边界

  • 当前版本的 Amazon Bedrock Studio 仍然预计您的 AWS 账户中会有名AmazonDataZoneBedrockPermissionsBoundary为的类似政策。有关更多信息,请参阅 步骤 2:创建权限边界、服务角色和配置角色

当您创建 Amazon Bedrock Studio 项目、应用程序和组件时,Amazon Bedrock Studio 会将此权限边界应用于创建这些资源时生成的IAM角色。

Amazon Bedrock Studio 使用AmazonBedrockStudioPermissionsBoundary托管策略来限制其所关联的预配置IAM委托人的权限。委托人可以采取亚马逊 DataZone 可以代表 Amazon Bedrock Studio 用户担任的用户角色的形式,然后执行诸如读取和写入 Amazon S3 对象或调用 Amazon Bedrock 代理之类的操作。

AmazonBedrockStudioPermissionsBoundary政策授予亚马逊 Bedrock Studio 对亚马逊 S3、Amazon Bedrock、Amazon S OpenSearch erverless 等服务的读写权限。 AWS Lambda该策略还向使用这些服务所需的某些基础设施资源授予读写权限,例如 Secr AWS ets Manager 密钥、Amazon CloudWatch 日志组和 AWS KMS 密钥。

此策略由以下几组权限组成。

  • s3— 允许对由 Amazon Bedrock Studio 管理的 Amazon S3 存储桶中的对象进行读写权限。

  • bedrock— 允许使用由亚马逊 Bedrock Studio 管理的 Amazon Bedrock 代理、知识库和护栏。

  • aoss— 允许API访问由亚马逊 OpenSearch Bedrock Studio 管理的亚马逊无服务器馆藏。

  • lambda— 允许调用由 Amazon Bedrock Studio 管理的 AWS Lambda 函数。

  • secretsmanager— 允许读取和写入由 Amazon Bedrock Studio 管理的 Secrets Manager 机密。AWS

  • logs— 提供对由亚马逊 Bedrock Studio 管理的亚马逊 CloudWatch 日志的写入权限。

  • kms— 授予使用 AWS 密钥加密亚马逊 Bedrock Studio 数据的权限。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AccessS3Buckets", "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:ListBucketVersions", "s3:GetObject", "s3:PutObject", "s3:DeleteObject", "s3:GetObjectVersion", "s3:DeleteObjectVersion" ], "Resource": "arn:aws:s3:::br-studio-${aws:PrincipalAccount}-*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } }, { "Sid": "AccessOpenSearchCollections", "Effect": "Allow", "Action": "aoss:APIAccessAll", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}" } } }, { "Sid": "InvokeBedrockModels", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream" ], "Resource": "arn:aws:bedrock:*::foundation-model/*" }, { "Sid": "AccessBedrockResources", "Effect": "Allow", "Action": [ "bedrock:InvokeAgent", "bedrock:Retrieve", "bedrock:StartIngestionJob", "bedrock:GetIngestionJob", "bedrock:ListIngestionJobs", "bedrock:ApplyGuardrail", "bedrock:ListPrompts", "bedrock:GetPrompt", "bedrock:CreatePrompt", "bedrock:DeletePrompt", "bedrock:CreatePromptVersion", "bedrock:InvokeFlow", "bedrock:ListTagsForResource", "bedrock:TagResource", "bedrock:UntagResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}", "aws:ResourceTag/AmazonBedrockManaged": "true" }, "Null": { "aws:ResourceTag/AmazonDataZoneProject": "false" } } }, { "Sid": "RetrieveAndGenerate", "Effect": "Allow", "Action": "bedrock:RetrieveAndGenerate", "Resource": "*" }, { "Sid": "WriteLogs", "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "arn:aws:logs:*:*:log-group:/aws/lambda/br-studio-*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}", "aws:ResourceTag/AmazonBedrockManaged": "true" }, "Null": { "aws:ResourceTag/AmazonDataZoneProject": "false" } } }, { "Sid": "InvokeLambdaFunctions", "Effect": "Allow", "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:*:*:function:br-studio-*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}", "aws:ResourceTag/AmazonBedrockManaged": "true" }, "Null": { "aws:ResourceTag/AmazonDataZoneProject": "false" } } }, { "Sid": "AccessSecretsManagerSecrets", "Effect": "Allow", "Action": [ "secretsmanager:DescribeSecret", "secretsmanager:GetSecretValue", "secretsmanager:PutSecretValue" ], "Resource": "arn:aws:secretsmanager:*:*:secret:br-studio/*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}", "aws:ResourceTag/AmazonBedrockManaged": "true" }, "Null": { "aws:ResourceTag/AmazonDataZoneProject": "false" } } }, { "Sid": "UseKmsKeyWithBedrock", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}", "aws:ResourceTag/EnableBedrock": "true" }, "Null": { "kms:EncryptionContext:aws:bedrock:arn": "false" } } }, { "Sid": "UseKmsKeyWithAwsServices", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceAccount": "${aws:PrincipalAccount}", "aws:ResourceTag/EnableBedrock": "true" }, "StringLike": { "kms:ViaService": [ "s3.*.amazonaws.com", "secretsmanager.*.amazonaws.com" ] } } } ] }

Amazon Bedrock 更新了托 AWS 管政策

查看自该服务开始跟踪这些更改以来,Amazon Bedrock AWS 托管政策更新的详细信息。要获得有关此页面变更的自动提醒,请订阅上的 RSS Feed 《Amazon Bedrock 用户指南》的文档历史记录

更改 描述 日期

AmazonBedrockStudioPermissionsBoundary – 新策略

亚马逊 Bedrock Studio 发布了该政策的第一个版本。

2024年7月31日

AmazonBedrockFullAccess – 新策略

Amazon Bedrock 添加了一项新策略,授予用户创建、读取、更新和删除资源的权限。

2023 年 12 月 12 日

AmazonBedrockReadOnly – 新策略

Amazon Bedrock 添加了一项新策略,授予用户对所有操作的只读权限。

2023 年 12 月 12 日

Amazon Bedrock 已开启跟踪更改

Amazon Bedrock 开始跟踪其 AWS 托管政策的变更。

2023 年 12 月 12 日