本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为 Guardrails 设置权限
要设置具有使用护栏权限的角色,请创建一个 IAM 角色并按照创建向 AWS 服务委派权限的角色中的步骤附加以下权限。
如果您对代理使用防护栏,请将权限附加到具有创建和管理代理权限的服务角色。您可以在控制台中设置此角色,也可以按照中的步骤创建自定义角色为 Amazon Bedrock 的代理创建服务角色。
-
调用 Amazon Bedrock 基础模型的权限
-
创建和管理护栏的权限
-
(可选)解密客户管理的护栏密 AWS KMS 钥的权限
创建和管理护栏的权限
将以下语句附加到策略的Statement
字段中,以便您的角色使用护栏。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "CreateAndManageGuardrails", "Effect": "Allow", "Action": [ "bedrock:CreateGuardrail", "bedrock:CreateGuardrailVersion", "bedrock:DeleteGuardrail", "bedrock:GetGuardrail", "bedrock:ListGuardrails", "bedrock:UpdateGuardrail" ], "Resource": "*" } ] }
调用护栏的权限
将以下语句附加到该角色的策略Statement
字段中,以允许模型推断和调用护栏。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "InvokeFoundationModel", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream" ], "Resource": [ "arn:aws:bedrock:region::foundation-model/*" ] }, { "Sid": "ApplyGuardrail", "Effect": "Allow", "Action": [ "bedrock:ApplyGuardrail" ], "Resource": [ "arn:aws:bedrock:
region
:account-id
:guardrail/guardrail-id
" ] } ] }
(可选)为护栏创建客户托管密钥
任何具有CreateKey
权限的用户都可以使用 AWS Key Management Service (AWS KMS) 控制台或CreateKey操作创建客户托管密钥。确保创建对称加密密钥。创建密钥后,设置以下权限。
-
按照创建密钥策略中的步骤为您的 KMS 密钥创建基于资源的策略。添加以下策略声明,向护栏用户和护栏创建者授予权限。将每个
角色
替换为允许其执行指定操作的角色。{ "Version": "2012-10-17", "Id": "KMS Key Policy", "Statement": [ { "Sid": "PermissionsForGuardrailsCreators", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
account-id
:user/role
" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "*" }, { "Sid": "PermissionsForGuardrailsUusers", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-id
:user/role
" }, "Action": "kms:Decrypt", "Resource": "*" } } -
将以下基于身份的策略附加到角色以允许其创建和管理护栏。将
密钥 ID
替换为您创建的 KMS 密钥的 ID。{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow role to create and manage guardrails", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:DescribeKey", "kms:GenerateDataKey" "kms:CreateGrant" ], "Resource": "arn:aws:kms:
region
:account-id
:key/key-id
" } ] } -
将以下基于身份的策略附加到角色,以允许该角色在模型推断期间或调用代理时使用您加密的护栏。将
密钥 ID
替换为您创建的 KMS 密钥的 ID。{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow role to use an encrypted guardrail during model inference" "Effect": "Allow", "Action": [ "kms:Decrypt", ], "Resource": "arn:aws:kms:
region
:account-id
:key/key-id
" } ] }