기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
에 대한 권한 참조 AWS Secrets Manager
권한 정책을 구성하는 요소를 확인하려면 JSON 정책 문서 구조 및 IAM JSON 정책 요소 참조를 참조하세요.
사용자 고유의 권한 정책 작성을 시작하려면 에 대한 권한 정책 예제 AWS Secrets Manager 섹션을 참조하세요.
작업 테이블의 리소스 유형 열에는 각 작업이 리소스 수준 권한을 지원하는지 여부가 표시됩니다. 리소스 열에 값이 없으면 정책 문의 Resource
요소에서 정책이 적용되는 모든 리소스("*")를 지정해야 합니다. 리소스 열에 리소스 유형이 포함되어 있으면 해당 작업 시 문에서 해당 유형의 ARN을 지정할 수 있습니다. 작업에 필요한 리소스가 하나 이상 있는 경우, 호출자에게 해당 리소스와 함께 작업을 사용할 수 있는 권한이 있어야 합니다. 필수 리소스는 테이블에서 별표(*)로 표시됩니다. IAM 정책의 Resource
요소로 리소스 액세스를 제한하는 경우, 각 필수 리소스 유형에 대해 ARN 또는 패턴을 포함해야 합니다. 일부 작업은 다수의 리소스 유형을 지원합니다. 리소스 유형이 옵션(필수 리소스로 표시되지 않은 경우)인 경우에는 선택적 리소스 유형 중 하나를 사용하도록 선택할 수 있습니다.
작업 테이블의 조건 키 열에는 정책 설명의 Condition
요소에서 지정할 수 있는 키가 포함됩니다. 서비스의 리소스와 연결된 조건 키에 대한 자세한 내용은 리소스 유형 테이블의 조건 키 열을 참조하세요.
Secrets Manager 작업
Secrets Manager 리소스
리소스 유형 | ARN | 조건 키 |
---|---|---|
Secret |
arn:${Partition}:secretsmanager:${Region}:${Account}:secret:${SecretId}
|
Secrets Manager에서는 보안 암호 이름의 끝에 대시와 임의의 영숫자 6자를 추가해 보안 암호 ARN의 마지막 부분을 구성합니다. 보안 암호를 삭제한 다음 이름이 동일한 다른 보안 암호를 다시 생성할 경우 이 형식을 사용하면 Secrets Manager에서 임의의 문자 6자를 새로 생성하므로 원래 보안 암호에 대한 권한을 가진 개인이 새 보안 암호에 대한 액세스 권한을 자동으로 얻을 수 없습니다.
보안 암호 세부 정보 페이지에서 또는 DescribeSecret
를 사용하여 Secrets Manager 콘솔의 보안 암호에 대한 ARN을 찾을 수 있습니다.
조건 키
권한 정책에 다음 표의 문자열 조건을 포함하는 경우, Secrets Manager에 대한 호출자가 일치하는 파라미터를 전달해야 합니다. 그렇지 않으면 액세스가 거부됩니다. 누락된 파라미터에 대해 호출자가 거부되는 것을 방지하려면 조건 연산자 이름의 끝에 IfExists
를 추가합니다(예: StringLikeIfExists
). 자세한 내용은 IAM JSON 정책 요소: 조건 연산자를 참조하세요.
조건 키 | 설명 | 유형 |
---|---|---|
aws:RequestTag/${TagKey} | Secrets Manager 서비스에 대한 사용자의 요청에 있는 키를 기준으로 액세스를 필터링합니다. | String |
aws:ResourceTag/${TagKey} | 리소스와 연결된 태그를 기준으로 액세스를 필터링합니다. | String |
aws:TagKeys | Secrets Manager 서비스에 대한 사용자의 요청에 있는 모든 태그 키 이름의 목록을 기준으로 액세스를 필터링합니다. | ArrayOfString |
secretsmanager:AddReplicaRegions | 보안 암호를 복제할 리전 목록을 기준으로 액세스를 필터링합니다. | ArrayOfString |
secretsmanager:BlockPublicPolicy | 리소스 정책이 광범위한 AWS 계정 액세스를 차단하는지 여부를 기준으로 액세스를 필터링합니다. | 부울 |
secretsmanager:Description | 요청에 있는 설명 텍스트를 기준으로 액세스를 필터링합니다. | String |
secretsmanager:ForceDeleteWithoutRecovery | 암호를 복구 기간 없이 즉시 삭제해야 하는지 여부에 따라 액세스를 필터링합니다. | 부울 |
secretsmanager:ForceOverwriteReplicaSecret | 대상 리전에서 동일한 이름의 보안 암호를 덮어쓸지 여부를 기준으로 액세스를 필터링합니다. | 부울 |
secretsmanager:KmsKeyId | 요청에 있는 KMS 키의 ARN을 기준으로 액세스를 필터링합니다. | String |
secretsmanager:ModifyRotationRules | 보안 암호의 교체 규칙을 수정해야 하는지 여부에 따라 액세스를 필터링합니다. | 부울 |
secretsmanager:Name | 요청에 있는 보안 암호의 표시 이름을 기준으로 액세스를 필터링합니다. | String |
secretsmanager:RecoveryWindowInDays | Secrets Manager가 보안 암호를 삭제하기 전에 대기해야 하는 기간(일)을 기준으로 액세스를 필터링합니다. | 숫자 |
secretsmanager:ResourceTag/tag-key | 태그 키-값 페어를 기준으로 액세스를 필터링합니다. | String |
secretsmanager:RotateImmediately | 보안 암호를 즉시 교체해야 하는지 여부에 따라 액세스를 필터링합니다. | 부울 |
secretsmanager:RotationLambdaARN | 요청에 있는 교체 Lambda 함수의 ARN을 기준으로 액세스를 필터링합니다. | ARN |
secretsmanager:SecretId | 요청에 있는 SecretID 값을 기준으로 액세스를 필터링합니다. | ARN |
secretsmanager:SecretPrimaryRegion | 비밀이 생성된 기본 지역별로 액세스를 필터링합니다. | String |
secretsmanager:VersionId | 요청에 있는 보안 암호 버전의 고유 식별자를 기준으로 액세스를 필터링합니다. | String |
secretsmanager:VersionStage | 요청에 있는 버전 단계의 목록을 기준으로 액세스를 필터링합니다. | String |
secretsmanager:resource/AllowRotationLambdaArn | 보안 암호와 연결된 교체 Lambda 함수의 ARN을 기준으로 액세스를 필터링합니다. | ARN |
BlockPublicPolicy
조건을 포함하는 보안 암호에 대한 광범위한 액세스 차단
PutResourcePolicy
작업을 허용하는 자격 증명 정책에서 BlockPublicPolicy: true
를 사용하는 것이 좋습니다. 이 조건은 정책에서 광범위한 액세스를 허용하지 않는 경우에만 사용자가 리소스 정책을 보안 암호에 연결할 수 있음을 의미합니다.
Secrets Manager는 Zelkova 자동화된 추론을 사용하여 광범위한 액세스에 대한 리소스 정책을 분석합니다. Zelkova에 대한 자세한 내용은 보안 블로그에서 자동화된 추론을 AWS 사용하여 대규모 보안을 달성하는 방법을
다음 예에서는 BlockPublicPolicy
를 사용하는 방법을 보여줍니다.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "secretsmanager:PutResourcePolicy", "Resource": "
SecretId
", "Condition": { "Bool": { "secretsmanager:BlockPublicPolicy": "true" } } } }
IP 주소 조건
그러나 Secrets Manager에 대한 액세스를 허용하거나 거부하는 정책문에서 IP 주소 조건 연산자 또는 aws:SourceIp
조건 키를 지정할 때는 주의해야 합니다 예를 들어 기업 네트워크 IP 주소 범위의 요청에 대한 AWS 작업을 비밀로 제한하는 정책을 추가하면 기업 네트워크에서 요청을 호출하는 IAM 사용자의 요청이 예상대로 작동합니다. 그러나 Lambda 함수로 교체를 활성화하는 경우와 같이 다른 서비스가 사용자를 대신하여 암호에 액세스할 수 있도록 하는 경우 해당 함수는 -internal 주소 공간에서 Secrets Manager 작업을 호출합니다. AWS IP 주소 필터가 있는 정책의 영향을 받는 요청은 실패합니다.
또한 요청이 Amazon VPC 엔드포인트에서 이루어지는 경우 aws:sourceIP
조건 키는 유효하지 않습니다. 요청을 특정 VPC 엔드포인트로 제한하려면 VPC 엔드포인트 조건를 사용합니다.
VPC 엔드포인트 조건
특정 VPC 또는 VPC 엔드포인트의 요청으로 액세스를 허용하거나 거부하려면 aws:SourceVpc
를 사용하여 지정된 VPC 요청으로 액세스를 제한하거나 aws:SourceVpce
를 사용하여 지정된 VPC 엔드포인트의 요청으로 액세스를 제한합니다. 예: 권한 및 VPC 단원을 참조하세요.
-
aws:SourceVpc
는 지정된 VPC의 요청으로 액세스를 제한합니다. -
aws:SourceVpce
는 지정된 VPC 엔드포인트의 요청으로 액세스를 제한합니다.
Secrets Manager 보안 암호에 대한 액세스를 허용하거나 거부하는 보안 암호 정책문에 이러한 조건 키를 사용하면 사용자를 대신해 Secrets Manager를 사용하여 보안 암호에 액세스하는 서비스에 대한 액세스를 실수로 거부하게 될 수 있습니다. 일부 AWS 서비스만 VPC 내에서 엔드포인트를 사용하여 실행할 수 있습니다. 보안 암호에 대한 요청을 VPC 또는 VPC 엔드포인트로 제한하면 구성되지 않은 서비스로부터의 Secrets Manager 호출에 실패할 수 있습니다.
AWS Secrets Manager VPC 엔드포인트 사용을 참조하세요.