

• O AWS Systems Manager CloudWatch Dashboard não estará mais disponível a partir de 30 de abril de 2026. Os clientes podem continuar usando o console do Amazon CloudWatch para visualizar, criar e gerenciar os painéis do Amazon CloudWatch exatamente como fazem hoje. Para obter mais informações, consulte a [documentação do Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

# Restringir o acesso a parâmetros do Parameter Store usando políticas do IAM
<a name="sysman-paramstore-access"></a>

Restrinja o acesso aos parâmetros AWS Systems Manager usando o AWS Identity and Access Management (IAM). Mais especificamente, você cria políticas do IAM que restringem o acesso às seguintes operações de API:
+ [DeleteParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_DeleteParameter.html)
+ [DeleteParameters](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_DeleteParameters.html)
+ [DescribeParameters](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_DescribeParameters.html)
+ [GetParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameter.html)
+ [GetParameters](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameters.html)
+ [GetParameterHistory](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParameterHistory.html)
+ [GetParametersByPath](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_GetParametersByPath.html)
+ [PutParameter](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_PutParameter.html)

Ao usar políticas do IAM para restringir o acesso a parâmetros do Systems Manager, recomendamos a criação e o uso de políticas *restritivas* do IAM. Por exemplo, a seguinte política permite que um usuário chame as operações de API `DescribeParameters` e `GetParameters` para um conjunto limitado de recursos. Isso significa que o usuário pode obter informações e usar todos os parâmetros que começam com `prod-*`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:DescribeParameters"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ssm:GetParameters"
            ],
            "Resource": "arn:aws:ssm:us-east-1:111122223333:parameter/prod-*"
        }
    ]
}
```

------

**Importante**  
Se um usuário tiver acesso a um caminho, o usuário poderá acessar todos os níveis desse caminho. Por exemplo, se um usuário tiver permissão para acessar um caminho `/a`, ele também pode acessar `/a/b`. Mesmo se o acesso de um usuário tiver sido explicitamente negado no IAM para o parâmetro `/a/b`, ele ainda poderá chamar a operação de API `GetParametersByPath` recursivamente para `/a` e visualizar `/a/b`.

Para administradores confiáveis, é possível fornecer acesso a todas as operações de API de parâmetros do Systems Manager usando uma política semelhante ao exemplo a seguir. Esta política fornece ao usuário o acesso total a todos os parâmetros de produção que começam com `dbserver-prod-*`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:PutParameter",
                "ssm:DeleteParameter",
                "ssm:GetParameterHistory",
                "ssm:GetParametersByPath",
                "ssm:GetParameters",
                "ssm:GetParameter",
                "ssm:DeleteParameters"
            ],
            "Resource": "arn:aws:ssm:us-east-1:111122223333:parameter/dbserver-prod-*"
        },
        {
            "Effect": "Allow",
            "Action": "ssm:DescribeParameters",
            "Resource": "*"
        }
    ]
}
```

------

## Negar permissões
<a name="sysman-paramstore-deny-permissions"></a>

Cada API é exclusiva e tem operações e permissões distintas que você pode permitir ou negar individualmente. Uma negação explícita em qualquer política substitui a permissão.

**nota**  
O valorAWS Key Management Service(AWS KMS) tem`Decrypt`permissão para todos os principais do IAM dentro doConta da AWS. Se você quiser ter níveis de acesso diferentes ao`SecureString`Na conta, não recomendamos que você use a chave padrão.

Se você quiser que todas as operações de API que recuperam valores de parâmetro tenham o mesmo comportamento, então você pode usar um padrão como`GetParameter*`em uma política. O exemplo a seguir mostra como negar`GetParameter`,`GetParameters`,`GetParameterHistory`, e`GetParametersByPath`para todos os parâmetros que começam com`prod-*`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "ssm:GetParameter*"
            ],
            "Resource": "arn:aws:ssm:us-east-1:111122223333:parameter/prod-*"
        }
    ]
}
```

------

O exemplo a seguir mostra como negar alguns comandos enquanto permite que o usuário execute outros comandos em todos os parâmetros que começam com `prod-*`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "ssm:PutParameter",
                "ssm:DeleteParameter",
                "ssm:DeleteParameters",
                "ssm:DescribeParameters"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "ssm:GetParametersByPath",
                "ssm:GetParameters",
                "ssm:GetParameter",
                "ssm:GetParameterHistory"
            ],
            "Resource": "arn:aws:ssm:us-east-1:111122223333:parameter/prod-*"
        }
    ]
}
```

------

**nota**  
O histórico de parâmetros inclui todas as versões de parâmetros, incluindo a atual. Portanto, se um usuário tiver permissão negada para`GetParameter`,`GetParameters`, e`GetParameterByPath`mas é permitido permissão para`GetParameterHistory`, eles podem ver o parâmetro atual, incluindo`SecureString`Parâmetros, usando`GetParameterHistory`.

## Permitir que apenas parâmetros específicos sejam executados em nós
<a name="sysman-paramstore-access-inst"></a>

Você pode controlar o acesso para que os nós gerenciados só possam executar os parâmetros especificados.

Se você escolher o tipo de parâmetro `SecureString` ao criar o parâmetro, o Systems Manager usará o AWS KMS para criptografar o valor do parâmetro. O AWS KMS criptografa o valor usando uma Chave gerenciada pela AWS ou uma chave gerenciada pelo cliente. Para obter mais informações sobre o AWS KMS e o AWS KMS key, consulte o *[Guia do desenvolvedor do AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/)*.

Você pode visualizar a Chave gerenciada pela AWS executando o comando a seguir na AWS CLI.

```
aws kms describe-key --key-id alias/aws/ssm
```

O exemplo a seguir permite que os nós obtenham um valor de parâmetro somente para parâmetros que começam com `prod-`. Se o parâmetro for um parâmetro `SecureString`, o nó descriptografará a string usando o AWS KMS.

**nota**  
As políticas de instâncias, como no exemplo a seguir, são atribuídas à função de instância no IAM. Para obter mais informações sobre como configurar o acesso a recursos do Systems Manager, incluindo como atribuir políticas a usuários e instâncias, consulte [Gerenciar instâncias do EC2 com o Systems Manager](systems-manager-setting-up-ec2.md).

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:GetParameters"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:parameter/prod-*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/4914ec06-e888-4ea5-a371-5b88eEXAMPLE"
            ]
        }
    ]
}
```

------

## Permissões do IAM para usar chaves padrão da AWS e chaves gerenciadas pelo cliente
<a name="ps-kms-permissions"></a>

Os parâmetros Parameter Store `SecureString` são criptografados e descriptografados usando as chaves do AWS KMS. É possível optar por criptografar os parâmetros `SecureString` usando uma AWS KMS key ou a chave KMS padrão fornecida pela AWS.

Ao usar uma chave gerenciada pelo cliente, a política do IAM que concede a um usuário acesso a um parâmetro ou um caminho de parâmetro deve fornecer permissões `kms:Encrypt` explícitas para a chave. Por exemplo, a política a seguir permite que um usuário crie, atualize e visualize parâmetros `SecureString` que começam com `prod-` na Região da AWS e Conta da AWS especificadas.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "ssm:PutParameter",
                "ssm:GetParameter",
                "ssm:GetParameters"
            ],
            "Resource": [
                "arn:aws:ssm:us-east-1:111122223333:parameter/prod-*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt",
                "kms:Encrypt",
                "kms:GenerateDataKey"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-12345EXAMPLE"
            ]
        }
    ]
}
```

------

**nota**  
A permissão `kms:GenerateDataKey` é necessária para criar parâmetros avançados criptografados usando a chave específica gerenciada pelo cliente. 

Por outro lado, todos os usuários da conta do cliente têm acesso à chave padrão gerenciada da AWS. Se você usar essa chave padrão para criptografar parâmetros `SecureString` e não quiser que os usuários trabalhem com parâmetros `SecureString`, suas políticas do IAM devem negar explicitamente o acesso à chave padrão, conforme demonstrado no exemplo de política a seguir.

**nota**  
É possível localizar o nome do recurso da Amazon (ARN) da chave padrão no console do AWS KMS na página [AWS managed keys (chaves gerenciadas)](https://console.aws.amazon.com/kms/home#/kms/defaultKeys). A chave padrão é identificada com `aws/ssm` na coluna **Alias**.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "kms:Decrypt",
                "kms:GenerateDataKey"
            ],
            "Resource": [
                "arn:aws:kms:us-east-1:111122223333:key/abcd1234-ab12-cd34-ef56-abcdeEXAMPLE"
            ]
        }
    ]
}
```

------

Se você precisar de controle de acesso minucioso sobre os parâmetros `SecureString` em sua conta, será necessário usar uma CMK gerenciada pelo cliente para proteger e restringir o acesso a esses parâmetros. Também recomendamos o uso do AWS CloudTrail para monitorar atividades de parâmetros `SecureString`.

Para saber mais, consulte os seguintes tópicos:
+ [Lógica da avaliação de políticas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html) no *Guia do usuário do IAM*
+ [Usar políticas de chaves no AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) no *Guia do desenvolvedor do AWS Key Management Service*
+ [Visualizar eventos com o histórico de eventos do CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html) no *Guia do usuário do AWS CloudTrail*