AWS Secrets Manager의 보안 암호에 대한 리소스 기반 정책을 어떻게 적용합니까?

2분 분량
0

리소스 기반 정책을 사용하여 AWS Secrets Manager 보안 암호에 대한 액세스를 어떻게 제어할 수 있습니까?

간략한 설명

리소스 기반 정책을 사용하면 보안 암호에 대한 사용자 액세스 권한과 AWS Identity and Access Management(IAM) 사용자가 수행할 수 있는 작업을 지정할 수 있습니다.

참고: 보안 암호는 Secrets Manager를 통해 리소스로 정의됩니다.

다음은 Secrets Manager 리소스 기반 정책의 일반적인 사용 사례입니다.

이 리소스 기반 정책 예제에서 IAM 요소 효과에 따라 문의 허용 또는 명시적 거부 여부가 지정됩니다. IAM 작업 요소는 보안 암호로 수행되는 작업을 정의합니다. IAM 리소스 요소는 정책이 연결된 보안 암호입니다. IAM 보안 주체는 보안 암호로 작업을 수행할 수 있는 액세스 권한이 있는 사용자를 지정합니다.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "secretsmanager:*",
      "Principal": {"AWS": "arn:aws:iam::123456789999:user/Mary"},
      "Resource": "*"
    }
  ]
}

해결 방법

Secrets Manager의 리소스 기반 정책을 적용하기 위해 이러한 지침에 따릅니다.

참고: AWS 명령줄 인터페이스(AWS CLI) 명령을 실행할 때 오류가 발생할 경우 AWS CLI의 최신 버전을 사용하고 있는지 확인하세요.

1.    보안 암호 만들기에 대한 지침을 따르세요. 보안 암호 ARN를 기록해 둡니다.

2.    이 정책을 복사하여 가장 좋아하는 텍스트 편집기에 붙여 넣은 다음 이 파일을 .json 파일 확장명으로 저장합니다. 예: my_explicit_deny_policy.json

{ "Version": "2012-10-17",
"Statement": [
    {
      "Effect": "Deny",
      "Action": "secretsmanager:GetSecretValue",
      "Principal": {"AWS": "arn:aws:iam::123456789999:user/Mary"},
      "Resource": "*"
    }
  ]
}

3.    AWS CLI 명령 put-resource-policy를 사용하여 IAM 사용자 Mary의 보안 암호 값 검색을 명시적으로 거부하도록 보안 암호의 리소스 정책을 배치합니다.

aws secretsmanager put-resource-policy --secret-id My_Resource_Secret --resource-policy file:// My_explicit_deny_Policy.json

4.    그러면 다음과 유사한 출력이 나타납니다.

{
"ARN": "arn:aws:secretsmanager:<your region>:123456789999:secret:My_Resource_Secret",
"Name": "My_Resource_Secret"
}

참고: AWS Key Management Service(AWS KMS) 복호화 권한은 사용자 지정 AWS KMS 키를 사용하여 보안 암호를 암호화하는 경우에만 필요합니다. 보안 암호가 기본 AWS KMS 키로 암호화되면 타사 계정의 IAM 보안 주체가 보안 암호를 검색할 수 없습니다.

자세한 내용은 Secrets Manager에서 리소스 기반 정책 사용을 참조하세요.


AWS 공식
AWS 공식업데이트됨 3년 전