Amazon Bedrock용 에이전트의 서비스 역할 생성 - Amazon Bedrock

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon Bedrock용 에이전트의 서비스 역할 생성

Amazon Bedrock에서 자동으로 생성하는 역할 대신 에이전트용 사용자 지정 서비스 역할을 사용하려면 서비스에 권한을 위임하기 위한 역할 생성의 단계에 따라 IAM 역할을 생성하고 다음 권한을 연결하십시오. AWS

사용자 지정 역할을 사용하든 사용하지 않든, 에이전트의 작업 그룹에 대한 Lambda 함수에 리소스 기반 정책을 연결하여 서비스 역할에 함수에 액세스할 수 있는 권한을 제공해야 합니다. 자세한 정보는 Amazon Bedrock이 작업 그룹 Lambda 함수를 호출할 수 있도록 허용하는 리소스 기반 정책을 참조하세요.

신뢰 관계

Amazon Bedrock은 다음 신뢰 정책을 통해 이 역할을 맡아 에이전트를 생성하고 관리할 수 있습니다. 필요에 따라 $ {values} 를 교체하십시오. 정책에는 보안 모범 사례로 사용하도록 권장하는 Condition 필드에 선택적 조건 키 (Amazon Bedrock의 조건 키 및AWS 글로벌 조건 컨텍스트 키 참조) 가 포함되어 있습니다.

참고

보안을 위한 가장 좋은 방법은 에이전트 ID를 생성한 후 *를 특정 에이전트 ID로 바꾸는 것입니다.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "${account-id}" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:${region}:${account-id}:agent/*" } } }] }

에이전트 서비스 역할에 대한 ID 기반 권한

다음 정책을 연결하여 서비스 역할에 대한 권한을 제공하고 필요에 따라 $ {values} 를 대체합니다. 정책에는 다음과 같은 설명이 포함되어 있습니다. 사용 사례에 해당되지 않는 경우 설명을 생략하세요. 정책에는 보안 모범 사례로 사용하도록 권장하는 Condition 필드에 선택적 조건 키 (Amazon Bedrock의 조건 키 및AWS 글로벌 조건 컨텍스트 키 참조) 가 포함되어 있습니다.

참고

고객 관리형 KMS 키로 에이전트를 암호화하는 경우 추가해야 할 추가 권한은 을 에이전트 리소스 암호화 참조하십시오.

  • Amazon Bedrock 기반 모델을 사용하여 에이전트의 오케스트레이션에 사용되는 프롬프트에서 모델 추론을 실행할 수 있는 권한

  • Amazon S3에 있는 에이전트의 작업 그룹 API 스키마에 액세스할 수 있는 권한 에이전트에 작업 그룹이 없는 경우 이 설명을 생략하십시오.

  • 상담원과 관련된 지식 기반에 액세스할 수 있는 권한. 상담원에게 관련 지식 기반이 없는 경우 이 설명을 생략하세요.

  • 상담원과 관련된 타사 (Pinecone또는Redis Enterprise Cloud) 지식창고에 액세스할 수 있는 권한. 지식 기반이 자사 기술 자료 (Amazon OpenSearch Serverless 또는 Amazon Aurora) 이거나 에이전트에 관련 지식 기반이 없는 경우에는 이 설명을 생략하십시오.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow model invocation for orchestration", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:${region}::foundation-model/anthropic.claude-v2", "arn:aws:bedrock:${region}::foundation-model/anthropic.claude-v2:1", "arn:aws:bedrock:${region}::foundation-model/anthropic.claude-instant-v1" ] }, { "Sid": "Allow access to action group API schemas in S3", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::bucket/path/to/schema" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${account-id}" } } }, { "Sid": "Query associated knowledge bases", "Effect": "Allow", "Action": [ "bedrock:Retrieve", "bedrock:RetrieveAndGenerate" ], "Resource": [ "arn:aws:bedrock:${region}:${account-id}:knowledge-base/knowledge-base-id" ] }, { "Sid": "Associate a third-party knowledge base with your agent", "Effect": "Allow", "Action": [ "bedrock:AssociateThirdPartyKnowledgeBase", ], "Resource": "arn:aws:bedrock:${region}:${account-id}:knowledge-base/knowledge-base-id", "Condition": { "StringEquals" : { "bedrock:ThirdPartyKnowledgeBaseCredentialsSecretArn": "arn:aws:kms:${region}:${account-id}:key/${key-id}" } } } ] }

(선택 사항) Amazon Bedrock이 에이전트 별칭과 함께 프로비저닝된 처리량을 사용할 수 있도록 허용하는 ID 기반 정책

프로비저닝된 처리량을 에이전트의 별칭과 연결하는 경우 다음 ID 기반 정책을 서비스 역할에 연결하거나 의 정책에 설명을 추가하십시오. 에이전트 서비스 역할에 대한 ID 기반 권한

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Use a Provisioned Throughput in model invocation", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetProvisionedModelThroughput" ], "Resource": [ "arn:aws:bedrock:{${region}}:{${account-id}}:${provisioned-model-id}" ] } ] }

(선택 사항) Amazon Bedrock이 에이전트와 함께 가드레일을 사용할 수 있도록 허용하는 ID 기반 정책

가드레일을 에이전트와 연결하는 경우 다음 ID 기반 정책을 서비스 역할에 연결하거나 에서 정책에 설명을 추가하십시오. 에이전트 서비스 역할에 대한 ID 기반 권한

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Apply a guardrail to your agent", "Effect": "Allow", "Action": "bedrock:ApplyGuardrail", "Resource": [ "arn:aws:bedrock:{${region}}:{${account-id}}:guardrail/${guardrail-id}" ] } ] }

(선택 사항) Amazon Bedrock이 S3의 파일에 액세스하여 코드 해석에 사용할 수 있도록 허용하는 ID 기반 정책

Amazon Bedrock에서 코드 해석을 활성화합니다.활성화하는 경우 다음 ID 기반 정책을 서비스 역할에 연결하거나 에이전트 서비스 역할에 대한 ID 기반 권한에서 정책에 설명을 추가하십시오.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AmazonBedrockAgentFileAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:GetObjectVersionAttributes", "s3:GetObjectAttributes" ], "Resource": [ "arn:aws:s3:::[[customerProvidedS3BucketWithKey]]" ] } ] }

Amazon Bedrock이 작업 그룹 Lambda 함수를 호출할 수 있도록 허용하는 리소스 기반 정책

Lambda용 리소스 기반 정책 사용의 단계를 따르고 다음 리소스 기반 정책을 Lambda 함수에 연결하여 Amazon Bedrock이 에이전트의 작업 그룹을 위한 Lambda 함수에 액세스하도록 허용하고 필요에 따라 $ {values} 를 대체하십시오. 정책에는 보안 모범 사례로 사용하도록 권장하는 Condition 필드에 선택적 조건 키 (Amazon Bedrock의 조건 키 및AWS 글로벌 조건 컨텍스트 키 참조) 가 포함되어 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow Amazon Bedrock to access action group Lambda function", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:${region}:${account-id}:function:function-name", "Condition": { "StringEquals": { "AWS:SourceAccount": "${account-id}" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:${region}:${account-id}:agent/${agent-id}" } } } ] }