AWS Doc SDK ExamplesWord
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
를 사용한 Secrets Manager 예제 AWS CLI
다음 코드 예제에서는 Secrets Manager AWS Command Line Interface 와 함께를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.
작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.
각 예제에는 컨텍스트에서 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있는 전체 소스 코드에 대한 링크가 포함되어 있습니다.
주제
작업
다음 코드 예시에서는 batch-get-secret-value
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 이름으로 나열된 보안 암호 그룹의 보안 암호 값을 검색하려면
다음
batch-get-secret-value
예제에서는 세 개의 암호에 대한 암호 값 암호를 가져옵니다.aws secretsmanager batch-get-secret-value \ --secret-id-list
MySecret1
MySecret2
MySecret3
출력:
{ "SecretValues": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret1-a1b2c3", "Name": "MySecret1", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa", "SecretString": "{\"username\":\"diego_ramirez\",\"password\":\"EXAMPLE-PASSWORD\",\"engine\":\"mysql\",\"host\":\"secretsmanagertutorial.cluster.us-west-2.rds.amazonaws.com\",\"port\":3306,\"dbClusterIdentifier\":\"secretsmanagertutorial\"}", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1523477145.729" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret2-a1b2c3", "Name": "MySecret2", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb", "SecretString": "{\"username\":\"akua_mansa\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1673477781.275" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret3-a1b2c3", "Name": "MySecret3", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEccccc", "SecretString": "{\"username\":\"jie_liu\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1373477721.124" } ], "Errors": [] }
자세한 내용은 Secrets Manager 사용 설명서의 배치에서 보안 암호 그룹 검색을 참조하세요. AWS
예제 2: 필터로 선택한 보안 암호 그룹의 보안 암호 값을 검색하려면
다음
batch-get-secret-value
예제에서는MySecret
이름에가 있는 계정의 보안 암호 값 암호를 가져옵니다. 이름의 필터링은 대소문자를 구분합니다.aws secretsmanager batch-get-secret-value \ --filters Key="name",Values="MySecret"
출력:
{ "SecretValues": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret1-a1b2c3", "Name": "MySecret1", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa", "SecretString": "{\"username\":\"diego_ramirez\",\"password\":\"EXAMPLE-PASSWORD\",\"engine\":\"mysql\",\"host\":\"secretsmanagertutorial.cluster.us-west-2.rds.amazonaws.com\",\"port\":3306,\"dbClusterIdentifier\":\"secretsmanagertutorial\"}", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1523477145.729" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret2-a1b2c3", "Name": "MySecret2", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb", "SecretString": "{\"username\":\"akua_mansa\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1673477781.275" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret3-a1b2c3", "Name": "MySecret3", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEccccc", "SecretString": "{\"username\":\"jie_liu\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1373477721.124" } ], "Errors": [] }
자세한 내용은 Secrets Manager 사용 설명서의 배치에서 보안 암호 그룹 검색을 참조하세요. AWS
-
API 세부 정보는 AWS CLI 명령 참조의 BatchGetSecretValue
를 참조하세요.
-
다음 코드 예시에서는 cancel-rotate-secret
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 암호의 자동 교체를 끄려면
다음
cancel-rotate-secret
예제에서는 보안 암호의 자동 교체를 끕니다. 교체를 재개하려면를 호출합니다rotate-secret
.aws secretsmanager cancel-rotate-secret \ --secret-id
MyTestSecret
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
자세한 내용은 Secrets Manager 사용 설명서의 암호 교체를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CancelRotateSecret
를 참조하세요.
-
다음 코드 예시에서는 create-secret
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: JSON 파일의 보안 인증 정보에서 보안 암호를 생성하려면
다음
create-secret
예시에서는 파일의 보안 인증 정보를 사용하여 보안 암호를 만듭니다. 자세한 내용은 AWS CLI 사용 설명서의 파일에서 Loading AWS CLI 파라미터를 참조하세요.aws secretsmanager create-secret \ --name
MyTestSecret
\ --secret-stringfile://mycreds.json
mycreds.json
의 콘텐츠:{ "engine": "mysql", "username": "saanvis", "password": "EXAMPLE-PASSWORD", "host": "my-database-endpoint.us-west-2.rds.amazonaws.com", "dbname": "myDatabase", "port": "3306" }
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 생성을 참조하세요.
예제 2: 보안 암호 생성
다음
create-secret
예시에서는 두 개의 키-값 쌍으로 보안 암호를 만듭니다. 명령 셸에 명령을 입력하면 명령 기록이 액세스되거나 유틸리티가 명령 파라미터에 액세스할 위험이 있습니다. 명령에 보안 암호 값이 포함된 경우 이는 문제가 됩니다. 자세한 내용은 Secrets Manager 사용 설명서의 명령줄 도구를 사용하여 보안 암호를 저장하는 위험 완화를 참조하세요.aws secretsmanager create-secret \ --name
MyTestSecret
\ --description"My test secret created with the CLI."
\ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE" }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 생성을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateSecret
를 참조하세요.
-
다음 코드 예시에서는 delete-resource-policy
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 암호에 연결된 리소스 기반 정책을 삭제하려면
다음
delete-resource-policy
예시에서는 보안 암호에 연결된 리소스 기반 정책을 삭제합니다.aws secretsmanager delete-resource-policy \ --secret-id
MyTestSecret
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
자세한 내용은 Secrets Manager 사용 설명서의 인증 및 액세스 제어를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteResourcePolicy
를 참조하세요.
-
다음 코드 예시에서는 delete-secret
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예 1: 보안 암호를 삭제하는 방법
다음
delete-secret
예시에서는 보안 암호를 삭제합니다.DeletionDate
응답 필드의 날짜 및 시간까지restore-secret
으로 보안 암호를 복구할 수 있습니다. 다른 리전에 복제된 보안 암호를 삭제하려면 먼저remove-regions-from-replication
(으)로 해당 복제본을 삭제한 다음delete-secret
을(를) 호출합니다.aws secretsmanager delete-secret \ --secret-id
MyTestSecret
\ --recovery-window-in-days7
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "DeletionDate": 1524085349.095 }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 삭제를 참조하세요.
예 2: 보안 암호를 즉시 삭제하는 방법
다음
delete-secret
예시는 복구 기간 없이 즉시 보안 암호를 삭제합니다. 이러한 보안 암호는 복구할 수 없습니다.aws secretsmanager delete-secret \ --secret-id
MyTestSecret
\ --force-delete-without-recovery출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "DeletionDate": 1508750180.309 }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 삭제를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteSecret
를 참조하세요.
-
다음 코드 예시에서는 describe-secret
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 암호의 세부 정보를 검색하는 방법
다음
describe-secret
예시에서는 보안 암호에 대한 세부 정보를 보여줍니다.aws secretsmanager describe-secret \ --secret-id
MyTestSecret
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-Ca8JGt", "Name": "MyTestSecret", "Description": "My test secret", "KmsKeyId": "arn:aws:kms:us-west-2:123456789012:key/EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE", "RotationEnabled": true, "RotationLambdaARN": "arn:aws:lambda:us-west-2:123456789012:function:MyTestRotationLambda", "RotationRules": { "AutomaticallyAfterDays": 2, "Duration": "2h", "ScheduleExpression": "cron(0 16 1,15 * ? *)" }, "LastRotatedDate": 1525747253.72, "LastChangedDate": 1523477145.729, "LastAccessedDate": 1524572133.25, "Tags": [ { "Key": "SecondTag", "Value": "AnotherValue" }, { "Key": "FirstTag", "Value": "SomeValue" } ], "VersionIdsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111": [ "AWSPREVIOUS" ], "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222": [ "AWSCURRENT" ], "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333": [ "AWSPENDING" ] }, "CreatedDate": 1521534252.66, "PrimaryRegion": "us-west-2", "ReplicationStatus": [ { "Region": "eu-west-3", "KmsKeyId": "alias/aws/secretsmanager", "Status": "InSync", "StatusMessage": "Replication succeeded" } ] }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeSecret
를 참조하세요.
-
다음 코드 예시에서는 get-random-password
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
무작위 암호를 생성하려면
다음
get-random-password
예제에서는 대문자, 소문자, 숫자 및 구두점이 하나 이상 포함된 20자 길이의 무작위 암호를 생성합니다.aws secretsmanager get-random-password \ --require-each-included-type \ --password-length
20
출력:
{ "RandomPassword": "EXAMPLE-PASSWORD" }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 생성 및 관리를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetRandomPassword
를 참조하세요.
-
다음 코드 예시에서는 get-resource-policy
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 암호에 연결된 리소스 기반 정책을 검색하려면
다음
get-resource-policy
예시에서는 보안 암호에 연결된 리소스 기반 정책을 검색합니다.aws secretsmanager get-resource-policy \ --secret-id
MyTestSecret
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "ResourcePolicy": "{\n\"Version\":\"2012-10-17\",\n\"Statement\":[{\n\"Effect\":\"Allow\",\n \"Principal\":{\n\"AWS\":\"arn:aws:iam::123456789012:root\"\n},\n\"Action\": \"secretsmanager:GetSecretValue\",\n\"Resource\":\"*\"\n}]\n}" }
자세한 내용은 Secrets Manager 사용 설명서의 인증 및 액세스 제어를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetResourcePolicy
를 참조하세요.
-
다음 코드 예시에서는 get-secret-value
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예 1: 보안 암호의 암호화된 보안 암호 값을 검색하는 방법
다음
get-secret-value
예에서는 현재 보안 암호 값을 가져옵니다.aws secretsmanager get-secret-value \ --secret-id
MyTestSecret
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "SecretString": "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": 1523477145.713 }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 검색을 참조하세요.
예 2: 이전 보안 암호 값 검색
다음
get-secret-value
예시에서는 이전 보안 암호 값을 가져옵니다.aws secretsmanager get-secret-value \ --secret-id
MyTestSecret
--version-stageAWSPREVIOUS
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "SecretString": "{\"user\":\"diegor\",\"password\":\"PREVIOUS-EXAMPLE-PASSWORD\"}", "VersionStages": [ "AWSPREVIOUS" ], "CreatedDate": 1523477145.713 }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 검색을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetSecretValue
를 참조하세요.
-
다음 코드 예시에서는 list-secret-version-ids
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 암호와 연결된 모든 보안 암호 버전을 나열하려면
다음
list-secret-version-ids
예제에서는 보안 암호의 모든 버전 목록을 가져옵니다.aws secretsmanager list-secret-version-ids \ --secret-id
MyTestSecret
출력:
{ "Versions": [ { "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSPREVIOUS" ], "LastAccessedDate": 1523477145.713, "CreatedDate": 1523477145.713 }, { "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "VersionStages": [ "AWSCURRENT" ], "LastAccessedDate": 1523477145.713, "CreatedDate": 1523486221.391 }, { "CreatedDate": 1.51197446236E9, "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333;" } ], "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
자세한 내용은 Secrets Manager 사용 설명서의 버전을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListSecretVersionIds
를 참조하세요.
-
다음 코드 예시에서는 list-secrets
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예 1: 계정의 보안 암호를 나열하는 방법
다음
list-secrets
예시에서는 계정에 있는 보안 암호 목록을 가져옵니다.aws secretsmanager list-secrets
출력:
{ "SecretList": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "LastChangedDate": 1523477145.729, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111": [ "AWSCURRENT" ] } }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:AnotherSecret-d4e5f6", "Name": "AnotherSecret", "LastChangedDate": 1523482025.685, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222": [ "AWSCURRENT" ] } } ] }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 찾기를 참조하세요.
예 1: 계정의 보안 암호 목록을 필터링하는 방법
다음
list-secrets
예시에서는 계정에서 이름에Test
가 있는 보안 암호 목록을 가져옵니다. 이름의 필터링은 대소문자를 구분합니다.aws secretsmanager list-secrets \ --filter Key="name",Values="Test"
출력:
{ "SecretList": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "LastChangedDate": 1523477145.729, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111": [ "AWSCURRENT" ] } } ] }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 찾기를 참조하세요.
예 3: 다른 서비스에서 관리하는 계정의 보안 암호를 나열하는 방법
다음
list-secrets
예제에서는 Amazon RDS에서 관리하는 계정의 보안 암호를 반환합니다.aws secretsmanager list-secrets \ --filter Key="owning-service",Values="rds"
출력:
{ "SecretList": [ { "Name": "rds!cluster-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Tags": [ { "Value": "arn:aws:rds:us-west-2:123456789012:cluster:database-1", "Key": "aws:rds:primaryDBClusterArn" }, { "Value": "rds", "Key": "aws:secretsmanager:owningService" } ], "RotationRules": { "AutomaticallyAfterDays": 1 }, "LastChangedDate": 1673477781.275, "LastRotatedDate": 1673477781.26, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa": [ "AWSPREVIOUS" ], "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb": [ "AWSCURRENT", "AWSPENDING" ] }, "OwningService": "rds", "RotationEnabled": true, "CreatedDate": 1673467300.7, "LastAccessedDate": 1673395200.0, "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:rds!cluster-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111-a1b2c3", "Description": "Secret associated with primary RDS DB cluster: arn:aws:rds:us-west-2:123456789012:cluster:database-1" } ] }
자세한 내용은 Secrets Manager 사용 설명서의 다른 서비스에서 관리하는 보안 암호를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListSecrets
를 참조하세요.
-
다음 코드 예시에서는 put-resource-policy
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 암호에 리소스 기반 정책을 추가하려면
다음
put-resource-policy
예시에서는 보안 암호에 사용 권한 정책을 추가하여 해당 정책이 암호에 대한 광범위한 액세스를 제공하지 않는지 먼저 확인합니다. 파일에서 해당 정책을 읽습니다. 자세한 내용은 AWS CLI 사용 설명서의 파일에서 Loading AWS CLI 파라미터를 참조하세요.aws secretsmanager put-resource-policy \ --secret-id
MyTestSecret
\ --resource-policyfile://mypolicy.json
\ --block-public-policymypolicy.json
의 콘텐츠:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/MyRole" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호에 권한 정책 연결을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 PutResourcePolicy
를 참조하세요.
-
다음 코드 예시에서는 put-secret-value
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예 1: 보안 암호에 새 암호 값을 저장하는 방법
다음
put-secret-value
예시에서는 두 개의 키-값 페어로 새 버전의 보안 암호를 만듭니다.aws secretsmanager put-secret-value \ --secret-id
MyTestSecret
\ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSCURRENT" ] }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 수정을 참조하세요.
예제 2: JSON 파일에 자격 증명의 새 보안 암호 값 저장
다음
put-secret-value
예에서는 파일로 된 보안 인증 정보로 새 버전의 보안 암호를 만듭니다. 자세한 내용은 AWS CLI 사용 설명서의 파일에서 Loading AWS CLI 파라미터를 참조하세요.aws secretsmanager put-secret-value \ --secret-id
MyTestSecret
\ --secret-stringfile://mycreds.json
mycreds.json
의 콘텐츠:{ "engine": "mysql", "username": "saanvis", "password": "EXAMPLE-PASSWORD", "host": "my-database-endpoint.us-west-2.rds.amazonaws.com", "dbname": "myDatabase", "port": "3306" }
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSCURRENT" ] }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 수정을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 PutSecretValue
를 참조하세요.
-
다음 코드 예시에서는 remove-regions-from-replication
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
복제본 보안 암호를 삭제하려면
다음
remove-regions-from-replication
예시에서는 eu-west-3의 복제 보안 암호를 삭제합니다. 다른 리전에 복제된 기본 보안 암호를 삭제하려면 먼저 복제본을 삭제한 다음delete-secret
을(를) 호출합니다.aws secretsmanager remove-regions-from-replication \ --secret-id
MyTestSecret
\ --remove-replica-regionseu-west-3
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "ReplicationStatus": [] }
자세한 내용은 Secrets Manager 사용 설명서의 복제본 보안 암호 삭제를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 RemoveRegionsFromReplication
를 참조하세요.
-
다음 코드 예시에서는 replicate-secret-to-regions
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 암호를 다른 리전에 복제하려면
다음
replicate-secret-to-regions
예시에서는 eu-west-3으로 보안 암호를 복제합니다. 복제본은 AWS 관리형 키 로 암호화됩니다aws/secretsmanager
.aws secretsmanager replicate-secret-to-regions \ --secret-id
MyTestSecret
\ --add-replica-regionsRegion=eu-west-3
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "ReplicationStatus": [ { "Region": "eu-west-3", "KmsKeyId": "alias/aws/secretsmanager", "Status": "InProgress" } ] }
자세한 내용은 Secrets Manager 사용 설명서의 다른 리전에 보안 암호 복제를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ReplicateSecretToRegions
를 참조하세요.
-
다음 코드 예시에서는 restore-secret
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
이전에 삭제한 보안 암호를 복원하려면
다음
restore-secret
예시에서는 이전에 삭제가 예정된 보안 암호를 복원합니다.aws secretsmanager restore-secret \ --secret-id
MyTestSecret
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 삭제를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 RestoreSecret
를 참조하세요.
-
다음 코드 예시에서는 rotate-secret
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 보안 암호의 자동 교체를 구성하고 시작하려면
다음
rotate-secret
예제에서는 보안 암호의 자동 교체를 구성하고 시작합니다. Secrets Manager는 보안 암호를 즉시 한 번 교체한 다음 2시간 간격으로 8시간마다 교체합니다. 출력은 교체로 생성된 새 보안 암호 버전의VersionId
를 보여줍니다.aws secretsmanager rotate-secret \ --secret-id
MyTestDatabaseSecret
\ --rotation-lambda-arnarn:aws:lambda:us-west-2:1234566789012:function:SecretsManagerTestRotationLambda
\ --rotation-rules "{\"ScheduleExpression\": \"cron(0 8/8 * * ? *)\", \"Duration\": \"2h\"}"출력:
{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
자세한 내용은 Secrets Manager 사용 설명서의 암호 교체를 참조하세요.
예제 2: 교체 간격에서 자동 교체를 구성하고 시작하려면
다음
rotate-secret
예제에서는 보안 암호의 자동 교체를 구성하고 시작합니다. Secrets Manager는 보안 암호를 즉시 한 번 교체한 다음 10일마다 교체합니다. 출력은 교체로 생성된 새 보안 암호 버전의VersionId
를 보여줍니다.aws secretsmanager rotate-secret \ --secret-id
MyTestDatabaseSecret
\ --rotation-lambda-arnarn:aws:lambda:us-west-2:1234566789012:function:SecretsManagerTestRotationLambda
\ --rotation-rules "{\"ScheduleExpression\": \"rate(10 days)\"}"출력:
{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
자세한 내용은 Secrets Manager 사용 설명서의 암호 교체를 참조하세요.
예제 3: 보안 암호를 즉시 교체하는 방법
다음
rotate-secret
예에서는 즉시 교체를 시작합니다. 출력은 교체로 생성된 새 보안 암호 버전의VersionId
를 보여줍니다. 보안 암호에 교체가 미리 구성되어 있어야 합니다.aws secretsmanager rotate-secret \ --secret-id
MyTestDatabaseSecret
출력:
{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
자세한 내용은 Secrets Manager 사용 설명서의 암호 교체를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 RotateSecret
를 참조하세요.
-
다음 코드 예시에서는 stop-replication-to-replica
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
복제본 암호를 기본 암호로 승격하려면
다음
stop-replication-to-replica
예시에서는 복제 암호와 기본 암호 간의 링크를 제거합니다. 복제 보안 암호는 복제본 리전의 기본 보안 암호로 승격됩니다. 복제 리전 내에서stop-replication-to-replica
을(를) 호출해야 합니다.aws secretsmanager stop-replication-to-replica \ --secret-id
MyTestSecret
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3" }
자세한 내용은 Secrets Manager 사용 설명서의 복제본 보안 암호 승격을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 StopReplicationToReplica
를 참조하세요.
-
다음 코드 예시에서는 tag-resource
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 보안 암호에 태그를 추가하려면
다음 예시에서는 간편 구문으로 태그를 연결하는 방법을 보여줍니다.
aws secretsmanager tag-resource \ --secret-id
MyTestSecret
\ --tagsKey=FirstTag,Value=FirstValue
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 태그 지정을 참조하세요.
예제 2: 보안 암호에 여러 태그를 추가하려면
다음
tag-resource
예시에서는 두 개의 키-값 태그를 보안 암호에 연결합니다.aws secretsmanager tag-resource \ --secret-id
MyTestSecret
\ --tags '[{"Key": "FirstTag", "Value": "FirstValue"}, {"Key": "SecondTag", "Value": "SecondValue"}]
'이 명령은 출력을 생성하지 않습니다.
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 태그 지정을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 TagResource
를 참조하세요.
-
다음 코드 예시에서는 untag-resource
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
보안 암호에서 태그를 제거하려면
다음
untag-resource
예시에서는 보안 암호에서 두 개의 태그를 제거합니다. 각 태그의 키와 값이 모두 제거됩니다.aws secretsmanager untag-resource \ --secret-id
MyTestSecret
\ --tag-keys '[ "FirstTag", "SecondTag"]
'이 명령은 출력을 생성하지 않습니다.
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 태그 지정을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UntagResource
를 참조하세요.
-
다음 코드 예시에서는 update-secret-version-stage
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 보안 암호를 이전 버전으로 되돌리려면
다음
update-secret-version-stage
예제에서는 AWS CURRENT 스테이징 레이블을 이전 버전의 보안 암호로 이동하고, 보안 암호를 이전 버전으로 되돌립니다. 이전 버전의 ID를 찾으려면를 사용합니다list-secret-version-ids
. 이 예제에서 AWS CURRENT 레이블이 있는 버전은 a1b2c3d4-5678-90ab-cdef-EXAMPLE11111이고 AWS PREVIOUS 레이블이 있는 버전은 a1b2c3d4-5678-90ab-cdef-EXAMPLE22222입니다. 이 예제에서는 AWS CURRENT 레이블을 버전 11111에서 22222로 이동합니다. AWS CURRENT 레이블이 버전에서 제거되므로는update-secret-version-stage
자동으로 AWS PREVIOUS 레이블을 해당 버전(11111)으로 이동합니다. 그 효과는 AWS CURRENT 및 AWS PREVIOUS 버전이 교체된다는 것입니다.aws secretsmanager update-secret-version-stage \ --secret-id
MyTestSecret
\ --version-stageAWSCURRENT
\ --move-to-version-ida1b2c3d4-5678-90ab-cdef-EXAMPLE22222
\ --remove-from-version-ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
자세한 내용은 Secrets Manager 사용 설명서의 버전을 참조하세요.
예제 2: 보안 암호 버전에 연결된 스테이징 레이블을 추가하려면
다음
update-secret-version-stage
예제에서는 보안 암호 버전에 스테이징 레이블을 추가합니다. 영향을 받는 버전의VersionStages
응답 필드를 실행list-secret-version-ids
하고 확인하여 결과를 검토할 수 있습니다.aws secretsmanager update-secret-version-stage \ --secret-id
MyTestSecret
\ --version-stageSTAGINGLABEL1
\ --move-to-version-idEXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
자세한 내용은 Secrets Manager 사용 설명서의 버전을 참조하세요.
예제 3: 보안 암호 버전에 연결된 스테이징 레이블 삭제
다음
update-secret-version-stage
예제에서는 보안 암호 버전에 연결된 스테이징 레이블을 삭제합니다. 영향을 받는 버전의VersionStages
응답 필드를 실행list-secret-version-ids
하고 확인하여 결과를 검토할 수 있습니다.aws secretsmanager update-secret-version-stage \ --secret-id
MyTestSecret
\ --version-stageSTAGINGLABEL1
\ --remove-from-version-ida1b2c3d4-5678-90ab-cdef-EXAMPLE11111
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
자세한 내용은 Secrets Manager 사용 설명서의 버전을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateSecretVersionStage
를 참조하세요.
-
다음 코드 예시에서는 update-secret
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
예 1: 보안 암호의 설명을 업데이트하는 방법
다음
update-secret
예에서는 보안 암호에 대한 설명을 업데이트합니다.aws secretsmanager update-secret \ --secret-id
MyTestSecret
\ --description"This is a new description for the secret."
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 수정을 참조하세요.
예 2: 보안 암호와 연결된 암호화 키를 업데이트하는 방법
다음
update-secret
예제에서는 보안 암호 값을 암호화하는 데 사용되는 KMS 키를 업데이트합니다. KMS 키는 보안 암호와 동일한 리전에 있어야 합니다.aws secretsmanager update-secret \ --secret-id
MyTestSecret
\ --kms-key-idarn:aws:kms:us-west-2:123456789012:key/EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE
출력:
{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }
자세한 내용은 Secrets Manager 사용 설명서의 보안 암호 수정을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateSecret
를 참조하세요.
-
다음 코드 예시에서는 validate-resource-policy
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
리소스 정책을 검증하려면
다음
validate-resource-policy
예제에서는 리소스 정책이 보안 암호에 대한 광범위한 액세스 권한을 부여하지 않는지 확인합니다. 정책은 디스크의 파일에서 읽습니다. 자세한 내용은 AWS CLI 사용 설명서의 파일에서 Loading AWS CLI 파라미터를 참조하세요.aws secretsmanager validate-resource-policy \ --resource-policy
file://mypolicy.json
mypolicy.json
의 콘텐츠:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/MyRole" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }
출력:
{ "PolicyValidationPassed": true, "ValidationErrors": [] }
자세한 내용은 Secrets Manager 사용 설명서의 Secrets Manager에 대한 권한 참조를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ValidateResourcePolicy
를 참조하세요.
-