Parameter Store에서 파라미터 정책 할당 - AWS Systems Manager

Parameter Store에서 파라미터 정책 할당

파라미터 정책은 만료 날짜 또는 유지 시간(TTL)과 같이 파라미터에 대한 특정 기준을 지정할 수 있도록 허용으로써 증가하는 파라미터 집합을 관리하는 데 도움이 됩니다. 파라미터 정책은 특히 AWS Systems Manager의 기능인 Parameter Store에 저장된 암호 및 구성 데이터를 강제로 업데이트 또는 삭제하도록 하는 데 유용합니다. Parameter Store는 Expiration, ExpirationNotificationNoChangeNotification 유형의 정책을 제공합니다.

참고

암호 교체 수명 주기를 구현하려면 AWS Secrets Manager를 사용합니다. Secrets Manager를 사용하면 수명 주기 동안 데이터베이스 자격 증명, API 키 및 기타 보안 암호를 손쉽게 교체, 관리 및 검색할 수 있습니다. 자세한 내용은 AWS Secrets Manager 사용 설명서AWS Secrets Manager(이)란 무엇입니까? 섹션을 참조하세요.

Parameter Store은 비동기 정기 검사를 사용하여 파라미터 정책을 적용합니다. 정책을 생성한 후에는 정책을 실행하기 위해 추가 작업을 수행할 필요가 없습니다. Parameter Store는 지정한 기준에 따라 정책에 의해 정의된 작업을 독립적으로 수행합니다.

참고

파라미터 정책은 고급 파라미터 티어를 사용하는 파라미터에 대해 사용할 수 있습니다. 자세한 내용은 파라미터 티어 관리 단원을 참조하십시오.

파라미터 정책은 다음 표에 표시된 대로 JSON 배열입니다. 새 고급 파라미터를 생성할 때 정책을 할당하거나 파라미터를 업데이트하여 정책을 적용할 수 있습니다. Parameter Store은 다음 유형의 파라미터 정책을 지원합니다.

정책 Details 예시

만료

이 정책은 파라미터를 삭제합니다. ISO_INSTANT 형식 또는 ISO_OFFSET_DATE_TIME 형식을 사용하여 특정 날짜와 시간을 지정할 수 있습니다. 파라미터를 삭제할 시점을 변경하려면 정책을 업데이트합니다. 파라미터를 업데이트해도 연결된 정책의 만료 날짜 또는 시간에는 영향을 주지 않습니다. 만료 날짜와 시간에 도달하면 Parameter Store에서 파라미터를 삭제합니다.

참고

이 예에서는 ISO_INSTANT 형식을 사용합니다. ISO_OFFSET_DATE_TIME 형식을 사용하여 날짜와 시간을 지정할 수도 있습니다. 예: 2019-11-01T22:13:48.87+10:30:00

{ "Type": "Expiration", "Version": "1.0", "Attributes": { "Timestamp": "2018-12-02T21:34:33.000Z" } }

ExpirationNotification

이 정책은 만료를 알리는 Amazon EventBridge(EventBridge) 이벤트를 시작합니다. 이 정책을 사용하면 만료 시간에 도달하기 전에 일 또는 시간 단위로 알림을 수신할 수 있습니다.

{ "Type": "ExpirationNotification", "Version": "1.0", "Attributes": { "Before": "15", "Unit": "Days" } }

NoChangeNotification

이 정책은 지정된 기간 동안 파라미터가 수정되지 않은 경우 EventBridge에서 이벤트를 시작합니다. 이 정책 유형은 일정 기간 내에 암호를 변경해야 하는 경우 등에 유용합니다.

이 정책은 파라미터의 LastModifiedTime속성을 읽음으로써 알림을 보낼 시기를 결정합니다. 파라미터를 변경하거나 편집하면 시스템이 LastModifiedTime의 새 값에 따라 알림 기간을 재설정합니다.

{ "Type": "NoChangeNotification", "Version": "1.0", "Attributes": { "After": "20", "Unit": "Days" } }

파라미터에 여러 정책을 할당할 수 있습니다. 예를 들어 시스템에서 파라미터가 곧 삭제됨을 알리는 EventBridge 이벤트를 시작하도록 ExpirationExpirationNotification 정책을 할당할 수 있습니다. 파라미터에 최대 10개의 정책을 할당할 수 있습니다.

다음 예에서는 ProdDB3이라는 새 SecureString 파라미터에 4개의 정책을 할당하는 PutParameter API 요청을 위한 요청 신택스를 보여줍니다.

{ "Name": "ProdDB3", "Description": "Parameter with policies", "Value": "P@ssW*rd21", "Type": "SecureString", "Overwrite": "True", "Policies": [ { "Type": "Expiration", "Version": "1.0", "Attributes": { "Timestamp": "2018-12-02T21:34:33.000Z" } }, { "Type": "ExpirationNotification", "Version": "1.0", "Attributes": { "Before": "30", "Unit": "Days" } }, { "Type": "ExpirationNotification", "Version": "1.0", "Attributes": { "Before": "15", "Unit": "Days" } }, { "Type": "NoChangeNotification", "Version": "1.0", "Attributes": { "After": "20", "Unit": "Days" } } ] }

기존 파라미터에 정책 추가

이 절에는 AWS Systems Manager 콘솔, AWS Command Line Interface(AWS CLI) 및 AWS Tools for Windows PowerShell을 사용하여 기존 파라미터에 정책을 추가하는 방법에 대한 정보가 포함되어 있습니다. 정책이 포함된 새 파라미터를 만드는 방법에 대한 자세한 내용은 Systems Manager에서 Parameter Store 파라미터 생성 섹션을 참조하세요.

콘솔을 사용하여 기존 파라미터에 정책 추가

Systems Manager 콘솔을 사용하여 기존 파라미터에 정책을 추가하려면 다음 절차를 사용합니다.

기존 파라미터에 정책을 추가하려면
  1. AWS Systems Manager 콘솔(https://console.aws.amazon.com/systems-manager/)을 엽니다.

  2. 탐색 창에서 Parameter Store를 선택합니다.

  3. 정책을 포함하도록 업데이트할 파라미터 옆의 옵션을 선택한 다음 편집을 선택합니다.

  4. 고급을 선택합니다.

  5. (선택 사항) 파라미터 정책 섹션에서 활성을 선택합니다. 이 파라미터에 대한 만료 날짜와 하나 이상의 알림 정책을 지정할 수 있습니다.

  6. Save changes(변경 사항 저장)를 선택합니다.

중요
  • Parameter Store은 정책을 새 정책으로 덮어쓰거나 정책을 제거할 때까지 파라미터에 대한 정책을 보존합니다.

  • 기존 파라미터에서 모든 정책을 제거하려면 다음과 같이 파라미터를 편집하고 대괄호 및 중괄호를 사용하여 빈 정책을 적용하십시오. [{}]

  • 이미 정책이 있는 파라미터에 새 정책을 추가하면 Systems Manager가 파라미터에 연결된 정책을 덮어씁니다. 기존 정책은 삭제됩니다. 이미 하나 이상의 정책이 있는 파라미터에 새 정책을 추가하려면 원래 정책을 복사하여 붙여넣고 새 정책을 입력한 다음 변경 사항을 저장합니다.

AWS CLI를 사용하여 기존 파라미터에 정책 추가

AWS CLI를 사용하여 기존 파라미터에 정책을 추가하려면 다음 절차를 사용하십시오.

기존 파라미터에 정책을 추가하려면
  1. 아직 하지 않은 경우 AWS Command Line Interface(AWS CLI)를 설치하고 구성합니다.

    자세한 내용은 최신 버전의 AWS CLI 설치 또는 업데이트를 참조하세요.

  2. 다음 명령을 실행하여 기존 파라미터에 정책을 추가합니다. 각 example resource placeholder를 사용자의 정보로 바꿉니다.

    Linux & macOS
    aws ssm put-parameter --name "parameter name" \ --value 'parameter value' \ --type parameter type \ --overwrite \ --policies "[{policies-enclosed-in-brackets-and-curly-braces}]"
    Windows
    aws ssm put-parameter --name "parameter name" ^ --value 'parameter value' ^ --type parameter type ^ --overwrite ^ --policies "[{policies-enclosed-in-brackets-and-curly-braces}]"

    다음은 15일 후에 파라미터를 삭제하는 만료 정책을 포함하는 예제입니다. 이 예제에는 파라미터가 삭제되기 5일 전에 EventBridge 이벤트를 생성하는 알림 정책도 포함되어 있습니다. 마지막으로 60일 후에 이 파라미터를 변경하지 않으면 NoChangeNotification 정책이 포함됩니다. 다음은 암호 및 AWS Key Management Service AWS KMS key에 난독화된 이름(3l3vat3131)을 사용하는 예입니다. AWS KMS keys에 대한 자세한 내용은 AWS Key Management Service Developer GuideAWS Key Management Service Concepts 섹션을 참조하세요.

    Linux & macOS
    aws ssm put-parameter \ --name "/Finance/Payroll/3l3vat3131" \ --value "P@sSwW)rd" \ --type "SecureString" \ --overwrite \ --policies "[{\"Type\":\"Expiration\",\"Version\":\"1.0\",\"Attributes\":{\"Timestamp\":\"2020-05-13T00:00:00.000Z\"}},{\"Type\":\"ExpirationNotification\",\"Version\":\"1.0\",\"Attributes\":{\"Before\":\"5\",\"Unit\":\"Days\"}},{\"Type\":\"NoChangeNotification\",\"Version\":\"1.0\",\"Attributes\":{\"After\":\"60\",\"Unit\":\"Days\"}}]"
    Windows
    aws ssm put-parameter ^ --name "/Finance/Payroll/3l3vat3131" ^ --value "P@sSwW)rd" ^ --type "SecureString" ^ --overwrite ^ --policies "[{\"Type\":\"Expiration\",\"Version\":\"1.0\",\"Attributes\":{\"Timestamp\":\"2020-05-13T00:00:00.000Z\"}},{\"Type\":\"ExpirationNotification\",\"Version\":\"1.0\",\"Attributes\":{\"Before\":\"5\",\"Unit\":\"Days\"}},{\"Type\":\"NoChangeNotification\",\"Version\":\"1.0\",\"Attributes\":{\"After\":\"60\",\"Unit\":\"Days\"}}]"
  3. 다음 명령을 실행하여 파라미터의 세부 정보를 확인합니다. parameter name을 사용자의 정보로 바꿉니다.

    Linux & macOS
    aws ssm describe-parameters \ --parameter-filters "Key=Name,Values=parameter name"
    Windows
    aws ssm describe-parameters ^ --parameter-filters "Key=Name,Values=parameter name"
중요
  • Parameter Store은 정책을 새 정책으로 덮어쓰거나 정책을 제거할 때까지 파라미터에 대한 정책을 보유합니다.

  • 기존 파라미터에서 모든 정책을 제거하려면 파라미터를 편집하고 대괄호 및 중괄호로 빈 정책을 적용하십시오. 각 example resource placeholder를 사용자의 정보로 바꿉니다. 예:

    Linux & macOS
    aws ssm put-parameter \ --name parameter name \ --type parameter type \ --value 'parameter value' \ --policies "[{}]"
    Windows
    aws ssm put-parameter ^ --name parameter name ^ --type parameter type ^ --value 'parameter value' ^ --policies "[{}]"
  • 이미 정책이 있는 파라미터에 새 정책을 추가하면 Systems Manager가 파라미터에 연결된 정책을 덮어씁니다. 기존 정책은 삭제됩니다. 이미 하나 이상의 정책이 있는 파라미터에 새 정책을 추가하려면 원래 정책을 복사하여 붙여넣고 새 정책을 입력한 다음 변경 사항을 저장합니다.

기존 파라미터에 정책 추가(Tools for Windows PowerShell)

Tools for Windows PowerShell을 사용하여 기존 파라미터에 정책을 추가하려면 다음 절차를 사용합니다. 각 example resource placeholder를 사용자의 정보로 바꿉니다.

기존 파라미터에 정책을 추가하려면
  1. Tools for Windows PowerShell을 열고 다음 명령을 실행하여 자격 증명을 지정합니다. Amazon Elastic Compute Cloud(Amazon EC2)에 관리자 권한이 있거나 AWS Identity and Access Management(IAM)에서 적절한 권한을 부여 받아야 합니다.

    Set-AWSCredentials ` –AccessKey access-key-name ` –SecretKey secret-key-name
  2. 다음 명령을 실행하여 PowerShell 세션의 리전을 설정합니다. 이 예에서는 미국 동부(오하이오) 리전(us-east-2)을 사용합니다.

    Set-DefaultAWSRegion ` -Region us-east-2
  3. 다음 명령을 실행하여 기존 파라미터에 정책을 추가합니다. 각 example resource placeholder를 사용자의 정보로 바꿉니다.

    Write-SSMParameter ` -Name "parameter name" ` -Value "parameter value" ` -Type "parameter type" ` -Policies "[{policies-enclosed-in-brackets-and-curly-braces}]" ` -Overwrite

    다음은 2020년 5월 13일 자정(GMT)에 파라미터를 삭제하는 만료 정책을 포함하는 예제입니다. 이 예제에는 파라미터가 삭제되기 5일 전에 EventBridge 이벤트를 생성하는 알림 정책도 포함되어 있습니다. 마지막으로 60일 후에 이 파라미터를 변경하지 않으면 NoChangeNotification 정책이 포함됩니다. 다음은 암호 및 AWS 관리형 키에 난독화된 이름(3l3vat3131)을 사용하는 예입니다.

    Write-SSMParameter ` -Name "/Finance/Payroll/3l3vat3131" ` -Value "P@sSwW)rd" ` -Type "SecureString" ` -Policies "[{\"Type\":\"Expiration\",\"Version\":\"1.0\",\"Attributes\":{\"Timestamp\":\"2018-05-13T00:00:00.000Z\"}},{\"Type\":\"ExpirationNotification\",\"Version\":\"1.0\",\"Attributes\":{\"Before\":\"5\",\"Unit\":\"Days\"}},{\"Type\":\"NoChangeNotification\",\"Version\":\"1.0\",\"Attributes\":{\"After\":\"60\",\"Unit\":\"Days\"}}]" ` -Overwrite
  4. 다음 명령을 실행하여 파라미터의 세부 정보를 확인합니다. parameter name을 사용자의 정보로 바꿉니다.

    (Get-SSMParameterValue -Name "parameter name").Parameters
중요
  • Parameter Store은 정책을 새 정책으로 덮어쓰거나 정책을 제거할 때까지 파라미터에 대한 정책을 보존합니다.

  • 기존 파라미터에서 모든 정책을 제거하려면 파라미터를 편집하고 대괄호 및 중괄호로 빈 정책을 적용하십시오. 예:

    Write-SSMParameter ` -Name "parameter name" ` -Value "parameter value" ` -Type "parameter type" ` -Policies "[{}]"
  • 이미 정책이 있는 파라미터에 새 정책을 추가하면 Systems Manager가 파라미터에 연결된 정책을 덮어씁니다. 기존 정책은 삭제됩니다. 이미 하나 이상의 정책이 있는 파라미터에 새 정책을 추가하려면 원래 정책을 복사하여 붙여넣고 새 정책을 입력한 다음 변경 사항을 저장합니다.