Atribuir políticas de parâmetros no Parameter Store - AWS Systems Manager

Atribuir políticas de parâmetros no Parameter Store

Políticas de parâmetros ajudam a gerenciar um conjunto crescente de parâmetros, permitindo atribuir critérios específicos a um parâmetro, como uma data de expiração ou tempo de vida. Elas são especialmente úteis para forçar você a atualizar ou excluir senhas e dados de configuração armazenados no Parameter Store, um recurso do AWS Systems Manager. O Parameter Store oferece os seguintes tipos de políticas: Expiration, ExpirationNotification e NoChangeNotification.

nota

Para implementar ciclos de vida de rotação de senha, useAWS Secrets Manager. Você pode alternar, gerenciar e recuperar credenciais de banco de dados, chaves de API e outros segredos durante seu ciclo de vida, usando o Secrets Manager. Para obter mais informações, consulte O que é o AWS Secrets Manager? no Guia do usuário do AWS Secrets Manager.

O Parameter Store impõe políticas de parâmetros usando verificações periódicas assíncronas. Depois de criar uma política, você não precisa realizar ações adicionais para impor essa política. O Parameter Store realiza independentemente a ação definida pela política, de acordo com os critérios que você especificou.

nota

Políticas de parâmetros estão disponíveis apenas para parâmetros que usam o nível avançado de parâmetros. Para ter mais informações, consulte Gerenciar camadas de parâmetros.

Uma política de parâmetro é uma matriz JSON, como mostra a tabela a seguir. Você pode atribuir uma política ao criar um novo parâmetro avançado ou pode aplicar uma política atualizando um parâmetro. O Parameter Store é compatível com os seguintes tipos de políticas de parâmetros.

Política Detalhes Exemplos

Expiração

Essa política exclui o parâmetro. Você pode especificar uma data e hora específicas usando o formato ISO_INSTANT ou o formato ISO_OFFSET_DATE_TIME. Para alterar quando deseja que o parâmetro seja excluído, você deve atualizar a política. Atualizar um parâmetro não afeta a data ou hora de expiração da política anexada a ele. Quando a data e hora de expiração forem atingidas, o Parameter Store excluirá o parâmetro.

nota

Esse exemplo usa o formato ISO_INSTANT. Você também pode especificar uma data e hora usando o formato ISO_OFFSET_DATE_TIME. Aqui está um exemplo: 2019-11-01T22:13:48.87+10:30:00.

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

ExpirationNotification

Essa política inicia um evento no Amazon EventBridge (EventBridge) que notifica você sobre a expiração. Ao usar essa política, você pode receber notificações antes que o tempo de expiração seja atingido, em unidades de dias ou horas.

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

NoChangeNotification

Essa política inicia um evento no EventBridge quando um parâmetro não foi modificado por um período especificado. Esse tipo de política é útil, por exemplo, quando uma senha precisa ser alterada em um determinado período de tempo.

Essa política determina quando enviar uma notificação, lendo o atributo LastModifiedTime do parâmetro. Se você alterar ou editar um parâmetro, o sistema redefinirá o período de notificação com base no novo valor de LastModifiedTime.

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

É possível atribuir várias políticas a um parâmetro. Por exemplo, você pode atribuir as políticas Expiration e ExpirationNotification para que o sistema acione um evento do EventBridge para notificá-lo sobre a exclusão iminente de um parâmetro. É possível atribuir um máximo de dez (10) políticas a um parâmetro.

O exemplo a seguir mostra a sintaxe da solicitação para uma solicitação da API PutParameter que atribui quatro políticas a um novo parâmetro SecureString chamado ProdDB3.

{ "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" } } ] }

Adicionar políticas a um parâmetro existente

Esta seção inclui informações sobre como adicionar políticas a um parâmetro usando o console do AWS Systems Manager, a AWS Command Line Interface (AWS CLI) e o AWS Tools for Windows PowerShell. Para obter informações sobre como criar um novo parâmetro que inclua políticas, consulte Criar parâmetros do Parameter Store no Systems Manager.

Adicionar políticas a um parâmetro existente usando o console

Use o procedimento a seguir para adicionar políticas a um parâmetro existente usando o console do Systems Manager.

Para adicionar políticas a um parâmetro existente
  1. Abra o console do AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, escolha Parameter Store.

  3. Escolha a opção ao lado do parâmetro que você deseja atualizar para incluir políticas e depois escolha Edit (Editar).

  4. Escolha Advanced (Avançado).

  5. (Opcional) Na seção Parameter policies (Políticas de parâmetro), escolha Enabled (Habilitado). Você pode especificar uma data de expiração e uma ou mais políticas de notificação para esse parâmetro.

  6. Escolha Salvar alterações.

Importante
  • O Parameter Store manterá as políticas em um parâmetro até que você queira removê-las ou substituí-las por novas políticas.

  • Para remover todas as políticas de um parâmetro existente, edite esse parâmetro e aplique uma política vazia usando colchetes e chaves, da seguinte maneira: [{}]

  • Se você adicionar uma nova política a um parâmetro que já tiver políticas, o Systems Manager substituirá as políticas anexadas a esse parâmetro. As políticas existentes são excluídas. Se quiser adicionar uma nova política a um parâmetro que já tenha uma ou mais políticas, copie e cole as políticas originais, digite a nova política e depois salve as alterações.

Adicionar políticas a um parâmetro existente usando a AWS CLI

Use o procedimento a seguir para adicionar políticas a um parâmetro usando a AWS CLI.

Para adicionar políticas a um parâmetro existente
  1. Instale e configure a AWS Command Line Interface (AWS CLI), caso ainda não o tenha feito.

    Para obter informações, consulte Instalar ou atualizar a versão mais recente da AWS CLI.

  2. Execute o comando a seguir para adicionar políticas a um parâmetro existente. Substitua cada espaço reservado para recurso de exemplo por suas próprias informações.

    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}]"

    Veja a seguir um exemplo que inclui uma política de expiração que exclui o parâmetro após 15 dias. O exemplo também inclui uma política de notificação que gera um evento do EventBridge 5 (cinco) dias antes de o parâmetro ser excluído. Por último, ele incluirá uma política NoChangeNotification se não forem feitas alterações nesse parâmetro após 60 dias. O exemplo usa um nome ofuscado (3l3vat3131) para uma senha e uma AWS KMS key do AWS Key Management Service. Para obter mais informações sobre AWS KMS keys, consulte Conceitos do AWS Key Management Service no Guia do desenvolvedor do AWS Key Management Service.

    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. Execute o seguinte comando para verificar os detalhes do parâmetro. Substitua nome do parâmetro pelas suas próprias informações.

    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"
Importante
  • O Parameter Store manterá as políticas de um parâmetro até que você queira removê-las ou substituí-las por novas políticas.

  • Para remover todas as políticas de um parâmetro existente, edite esse parâmetro e aplique uma política vazia de colchetes e chaves. Substitua cada espaço reservado para recurso de exemplo por suas próprias informações. Por exemplo:

    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 "[{}]"
  • Se você adicionar uma nova política a um parâmetro que já tiver políticas, o Systems Manager substituirá as políticas anexadas a esse parâmetro. As políticas existentes são excluídas. Se quiser adicionar uma nova política a um parâmetro que já tenha uma ou mais políticas, copie e cole as políticas originais, digite a nova política e depois salve as alterações.

Adicionar políticas a um parâmetro existente (Ferramentas para Windows PowerShell)

Use o procedimento a seguir para adicionar políticas a um parâmetro usando o console do Tools for Windows PowerShell. Substitua cada espaço reservado para recurso de exemplo por suas próprias informações.

Para adicionar políticas a um parâmetro existente
  1. Abra o Tools for Windows PowerShell e execute o seguinte comando para especificar suas credenciais. Você deve ter permissões de administrador no Amazon Elastic Compute Cloud (Amazon EC2) ou deve ter recebido a permissão apropriada no AWS Identity and Access Management (IAM).

    Set-AWSCredentials ` –AccessKey access-key-name ` –SecretKey secret-key-name
  2. Execute o seguinte comando para configurar a região da sua sessão do PowerShell. O exemplo usa a região Leste dos EUA (Ohio) (us-east-2).

    Set-DefaultAWSRegion ` -Region us-east-2
  3. Execute o comando a seguir para adicionar políticas a um parâmetro existente. Substitua cada espaço reservado para recurso de exemplo por suas próprias informações.

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

    Veja a seguir um exemplo que inclui uma política de expiração que exclui o parâmetro à meia-noite (GMT) do dia 13 de maio de 2020. O exemplo também inclui uma política de notificação que gera um evento do EventBridge 5 (cinco) dias antes de o parâmetro ser excluído. Por último, ele incluirá uma política NoChangeNotification se não forem feitas alterações nesse parâmetro após 60 dias. O exemplo usa um nome ofuscado (3l3vat3131) para uma senha e uma Chave gerenciada pela AWS.

    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. Execute o seguinte comando para verificar os detalhes do parâmetro. Substitua nome do parâmetro pelas suas próprias informações.

    (Get-SSMParameterValue -Name "parameter name").Parameters
Importante
  • O Parameter Store manterá as políticas em um parâmetro até que você queira removê-las ou substituí-las por novas políticas.

  • Para remover todas as políticas de um parâmetro existente, edite esse parâmetro e aplique uma política vazia de colchetes e chaves. Por exemplo:

    Write-SSMParameter ` -Name "parameter name" ` -Value "parameter value" ` -Type "parameter type" ` -Policies "[{}]"
  • Se você adicionar uma nova política a um parâmetro que já tiver políticas, o Systems Manager substituirá as políticas anexadas a esse parâmetro. As políticas existentes são excluídas. Se quiser adicionar uma nova política a um parâmetro que já tenha uma ou mais políticas, copie e cole as políticas originais, digite a nova política e depois salve as alterações.