다른 계정에서 AWS Secrets Manager 보안 암호에 액세스 - AWS Secrets Manager

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

다른 계정에서 AWS Secrets Manager 보안 암호에 액세스

하나의 계정에 속한 사용자가 다른 계정의 보안 암호에 액세스하도록 허용하려면(교차 계정 액세스) 리소스 정책 및 ID 정책 모두에서 액세스를 허용해야 합니다. 이는 보안 암호와 동일한 계정의 자격 증명에 액세스를 부여하는 것과 다릅니다.

또한 보안 암호를 암호화하는 KMS 키를 자격 증명에서 사용하도록 허용해야 합니다. 이는 교차 계정 액세스에 AWS 관리형 키(aws/secretsmanager)를 사용할 수 없기 때문입니다. 대신 생성한 KMS 키로 보안 암호를 암호화한 후 키 정책을 연결해야 합니다. KMS 키를 생성하는 데에는 요금이 부과됩니다. 보안 암호에 대한 암호화 키를 변경하려면 AWS Secrets Manager 보안 암호 수정 단원을 참조하세요.

다음 예제 정책에서는 계정1에 보안 암호 및 암호화 키가 있고, 보안 암호 값에 액세스할 수 있도록 허용할 자격 증명이 계정2에 있다고 가정합니다.

1단계: Account1의 보안 암호에 리소스 정책 연결
  • 다음 정책은 계정2ApplicationRole계정1의 보안 암호에 액세스하도록 허용합니다. 이 정책을 사용하려면 리소스 기반 정책 단원을 참조하세요.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::Account2:role/ApplicationRole" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }
2단계: Account1의 KMS 키에 대한 키 정책에 명령문 추가
  • 다음 키 정책 문은 계정2ApplicationRole계정1의 KMS 키를 사용하여 계정1의 보안 암호를 복호화하도록 허용합니다. 이 명령문을 사용하려면 KMS 키의 키 정책에 추가합니다. 자세한 내용은 키 정책 변경을 참조하세요.

    { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::Account2:role/ApplicationRole" }, "Action": [ "kms:Decrypt", "kms:DescribeKey" ], "Resource": "*" }
3단계: Account2의 자격 증명에 자격 증명 정책 연결
  • 다음 정책은 계정2ApplicationRole계정1의 보안 암호에 액세스하고 계정1의 암호화 키도 사용하여 보안 암호 값을 복호화하도록 허용합니다. 이 정책을 사용하려면 보안 인증 기반 정책 단원을 참조하세요. Secrets Manager 콘솔의 보안 암호 세부 정보 페이지에 있는 보안 암호 ARN 아래에서 보안 암호에 대한 ARN을 찾을 수 있습니다. 또는 describe-secret을 호출할 수 있습니다.

    { "Version" : "2012-10-17", "Statement" : [ { "Effect": "Allow", "Action": "secretsmanager:GetSecretValue", "Resource": "SecretARN" }, { "Effect": "Allow", "Action": "kms:Decrypt", "Resource": "arn:aws:kms:Region:Account1:key/EncryptionKey" } ] }