AWS Secrets Manager 암호에 리소스 기반 정책을 적용하려면 어떻게 해야 하나요?

2분 분량
0

리소스 기반 정책을 사용하여 AWS Secrets Manager 암호에 대한 액세스를 제어하려고 합니다.

간략한 설명

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

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

다음과 같은 일반적인 시나리오에서 Secrets Manager 리소스 기반 정책을 사용할 수 있습니다.

  • AWS 계정 간에 암호를 공유합니다.
  • 암호에 명시적 거부를 추가하여 권한을 적용합니다.

다음 리소스 기반 정책 예에서는 효과, 작업 ](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_resource.html), [ 리소스 및 보안 주체 요소를 사용합니다.

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

해결 방법

참고: AWS Command Line Interface(AWS CLI) 명령 실행 시 오류가 발생하는 경우, AWS CLI 오류 문제 해결을 참고하세요. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하세요.

Secrets Manager에서 리소스 기반 정책을 적용하려면 다음 단계를 완료하세요.

  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. put-resource-policy AWS CLI 명령을 실행하여 암호에 대한 리소스 정책을 첨부하여 암호 값 검색을 명시적으로 거부합니다.

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

    다음과 비슷한 출력이 표시됩니다.

    {"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 보안 주체는 암호를 검색할 수 없습니다.

자세한 내용을 보려면 AWS Secrets Manager 암호에 권한 정책 연결을 참조하십시오.

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