에 대한 권한 참조 AWS Secrets Manager - AWS Secrets Manager

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

에 대한 권한 참조 AWS Secrets Manager

권한 정책을 구성하는 요소를 확인하려면 JSON 정책 문서 구조IAM JSON 정책 요소 참조를 참조하세요.

사용자 고유의 권한 정책 작성을 시작하려면 에 대한 권한 정책 예제 AWS Secrets Manager 섹션을 참조하세요.

작업 테이블의 리소스 유형 열에는 각 작업이 리소스 수준 권한을 지원하는지 여부가 표시됩니다. 리소스 열에 값이 없으면 정책 문의 Resource 요소에서 정책이 적용되는 모든 리소스("*")를 지정해야 합니다. 리소스 열에 리소스 유형이 포함되어 있으면 해당 작업 시 문에서 해당 유형의 ARN을 지정할 수 있습니다. 작업에 필요한 리소스가 하나 이상 있는 경우, 호출자에게 해당 리소스와 함께 작업을 사용할 수 있는 권한이 있어야 합니다. 필수 리소스는 테이블에서 별표(*)로 표시됩니다. IAM 정책의 Resource 요소로 리소스 액세스를 제한하는 경우, 각 필수 리소스 유형에 대해 ARN 또는 패턴을 포함해야 합니다. 일부 작업은 다수의 리소스 유형을 지원합니다. 리소스 유형이 옵션(필수 리소스로 표시되지 않은 경우)인 경우에는 선택적 리소스 유형 중 하나를 사용하도록 선택할 수 있습니다.

작업 테이블의 조건 키 열에는 정책 설명의 Condition 요소에서 지정할 수 있는 키가 포함됩니다. 서비스의 리소스와 연결된 조건 키에 대한 자세한 내용은 리소스 유형 테이블의 조건 키 열을 참조하세요.

Secrets Manager 작업

작업 설명 액세스 레벨 리소스 유형(*필수) 조건 키 종속 작업
BatchGetSecretValue 보안 암호의 목록을 검색 및 복호화할 수 있는 권한을 부여합니다. 나열
CancelRotateSecret 진행 중인 보안 암호 교체를 취소할 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

CreateSecret 쿼리 및 교체할 수 있는 암호화된 데이터를 저장하는 비밀을 만들 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:Name

secretsmanager:Description

secretsmanager:KmsKeyId

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

secretsmanager:ResourceTag/tag-key

secretsmanager:AddReplicaRegions

secretsmanager:ForceOverwriteReplicaSecret

DeleteResourcePolicy 보안 암호에 연결된 리소스 정책을 삭제할 수 있는 권한을 부여합니다. 권한 관리

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

DeleteSecret 보안 암호를 삭제할 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:RecoveryWindowInDays

secretsmanager:ForceDeleteWithoutRecovery

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

DescribeSecret 보안 암호에 대한 메타데이터를 검색할 수 있는 권한을 부여하지만 암호화된 데이터를 검색할 수 있는 권한은 부여하지 않습니다. 읽기

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

GetRandomPassword 암호 생성에 사용할 임의 문자열을 생성할 수 있는 권한을 부여합니다. 읽기
GetResourcePolicy 보안 암호에 연결된 리소스 정책을 가져올 수 있는 권한을 부여합니다. 읽기

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

GetSecretValue 암호화된 데이터를 검색 및 복호화할 수 있는 권한을 부여합니다. 읽기

Secret*

secretsmanager:SecretId

secretsmanager:VersionId

secretsmanager:VersionStage

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ListSecretVersionIds 보안 암호의 사용 가능한 버전을 나열할 수 있는 권한을 부여합니다. 읽기

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ListSecrets 사용 가능한 보안 암호를 나열할 수 있는 권한을 부여합니다. 나열
PutResourcePolicy 보안 암호에 리소스 정책을 연결할 수 있는 권한을 부여합니다. 권한 관리

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:BlockPublicPolicy

secretsmanager:SecretPrimaryRegion

PutSecretValue 새 암호화된 데이터를 사용하여 보안 암호의 새 버전을 업데이트할 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

RemoveRegionsFromReplication 복제에서 지역을 제거할 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ReplicateSecretToRegions 기존 암호를 다중 지역 암호로 변환하고 암호를 새 지역 목록에 복제하기 시작할 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

secretsmanager:AddReplicaRegions

secretsmanager:ForceOverwriteReplicaSecret

RestoreSecret 보안 암호의 삭제를 취소할 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

RotateSecret 보안 암호의 교체을 시작할 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:SecretId

secretsmanager:RotationLambdaARN

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

secretsmanager:ModifyRotationRules

secretsmanager:RotateImmediately

StopReplicationToReplica 복제에서 암호를 제거하고 해당 암호를 복제본 리전의 리전 암호로 승격할 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

TagResource 보안 암호에 태그를 추가할 수 있는 권한을 부여합니다. 태그 지정

Secret*

secretsmanager:SecretId

aws:RequestTag/${TagKey}

aws:TagKeys

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

UntagResource 보안 암호에서 태그를 제거할 수 있는 권한을 부여합니다. 태그 지정

Secret*

secretsmanager:SecretId

aws:TagKeys

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

UpdateSecret 새 메타데이터 또는 암호화된 데이터의 새 버전으로 보안 암호를 업데이트할 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:SecretId

secretsmanager:Description

secretsmanager:KmsKeyId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

UpdateSecretVersionStage 보안 암호 간에 단계를 이동할 수 있는 권한을 부여합니다. 쓰기

Secret*

secretsmanager:SecretId

secretsmanager:VersionStage

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

ValidateResourcePolicy 정책을 연결하기 전에 리소스 정책을 검증할 권한을 부여합니다. 권한 관리

Secret*

secretsmanager:SecretId

secretsmanager:resource/AllowRotationLambdaArn

secretsmanager:ResourceTag/tag-key

aws:ResourceTag/${TagKey}

secretsmanager:SecretPrimaryRegion

Secrets Manager 리소스

리소스 유형 ARN 조건 키
Secret arn:${Partition}:secretsmanager:${Region}:${Account}:secret:${SecretId}

aws:RequestTag/${TagKey}

aws:ResourceTag/${TagKey}

aws:TagKeys

secretsmanager:ResourceTag/tag-key

secretsmanager:resource/AllowRotationLambdaArn

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 사용하여 대규모 보안을 달성하는 방법을 참조하십시오. 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 엔드포인트 사용을 참조하세요.