

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Sintaxe de SCP
<a name="orgs_manage_policies_scps_syntax"></a>

As políticas de controle de serviço (SCPs) usam uma sintaxe semelhante à usada pelas políticas de permissão AWS Identity and Access Management (IAM) e políticas [baseadas em recursos (como as políticas](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_resource-based) de bucket do Amazon S3). Para obter mais informações sobre as políticas do IAM e sua sintaxe, consulte [Visão geral das políticas do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) no *Guia do usuário do IAM*.

Uma SCP é um arquivo de texto sem formatação estruturado de acordo com as regras do [JSON](http://json.org). Ela usa os elementos que são descritos neste tópico.

**nota**  
Todos os caracteres em sua conta de SCP contam em relação ao seu [tamanho máximo](orgs_reference_limits.md#min-max-values). Os exemplos deste guia mostram o SCPs formato com espaço em branco extra para melhorar sua legibilidade. No entanto, para economizar espaço quando o tamanho da política se aproximar do tamanho máximo, é possível excluir todos os espaços em branco, como caracteres de espaço e quebras de linhas, que estiverem fora das aspas.

Para obter informações gerais sobre SCPs, consulte[Políticas de controle de serviços (SCPs)](orgs_manage_policies_scps.md).

## Resumo de elementos
<a name="scp-elements-table"></a>

A tabela a seguir resume os elementos de política que você pode usar em SCPs. Alguns elementos da política estão disponíveis somente nas ações SCPs de negação. A coluna **Efeitos suportados** lista o tipo de efeito que você pode usar com cada elemento de política em SCPs.


| Elemento | Finalidade | Efeitos com suporte | 
| --- | --- | --- | 
| [Ação](#scp-syntax-action) | Especifica o AWS serviço e as ações que o SCP permite ou nega. | `Allow`, `Deny` | 
| [Efeito](#scp-syntax-effect) | Define se a instrução da SCP [permite](orgs_manage_policies_scps_evaluation.md#how_scps_allow) ou [nega](orgs_manage_policies_scps_evaluation.md#how_scps_deny) o acesso principal a usuários e funções do IAM em uma conta. | `Allow`, `Deny` | 
| [Instrução](#scp-syntax-statement) | Serve como o contêiner para elementos de políticas. Você pode incluir várias declarações em SCPs. | `Allow`, `Deny` | 
| [ID da instrução (Sid)](#scp-syntax-sid) | (Opcional) Fornece um nome amigável para a instrução. | `Allow`, `Deny` | 
| [Versão](#scp-syntax-version) | Especifica as regras da sintaxe da linguagem a serem usadas para processar a política. | `Allow`, `Deny` | 
| [Condição](#scp-syntax-condition) | Especifica as condições em que a instrução está em vigor. | `Allow,``Deny` | 
| [NotAction](#scp-syntax-action) | Especifica AWS serviços e ações que estão isentos do SCP. Usado em vez do elemento `Action`. | `Allow,``Deny` | 
| [Recurso](#scp-syntax-resource) | Especifica os AWS recursos aos quais o SCP se aplica. | `Allow,``Deny` | 
| [NotResource](#scp-syntax-resource) | Especifica AWS os recursos que estão isentos do SCP. Usado em vez do elemento Resource. | `Allow`, `Deny` | 

As seções a seguir fornecem mais informações e exemplos de como os elementos da política são usados em SCPs.

**Topics**
+ [Resumo de elementos](#scp-elements-table)
+ [Elementos `Action` e `NotAction`](#scp-syntax-action)
+ [Elemento `Condition`](#scp-syntax-condition)
+ [Elemento `Effect`](#scp-syntax-effect)
+ [`Resource`e `NotResource` elemento](#scp-syntax-resource)
+ [Elemento `Statement`](#scp-syntax-statement)
+ [Elemento ID da instrução (`Sid`)](#scp-syntax-sid)
+ [Elemento `Version`](#scp-syntax-version)
+ [Elementos sem suporte](#scp-syntax-unsupported)

## Elementos `Action` e `NotAction`
<a name="scp-syntax-action"></a>

O valor do `NotAction` elemento `Action` or é uma lista (uma matriz JSON) de cadeias de caracteres que identificam AWS serviços e ações que são permitidos ou negados pela instrução.

Cada string consiste na abreviação do serviço (como "s3", "ec2", "iam" ou "organizations"), tudo em letras minúsculas, seguida por um ponto e vírgula e uma ação desse serviço. As ações e notações não diferenciam maiúsculas de minúsculas. Em geral, todas elas são inseridas com cada palavra começando com uma letra maiúscula e o restante em minúsculas. Por exemplo: `"s3:ListAllMyBuckets"`.

Você também pode usar caracteres curinga, como asterisco (\*) ou ponto de interrogação (?) em uma SCP:
+ Você também pode usar um asterisco como um curinga para corresponder a várias ações que compartilham parte de um nome. O valor `"s3:*"` significa todas as ações no serviço Amazon S3. O valor de `"ec2:Describe*"` corresponde apenas às ações do EC2 que começam com "Describe".
+ Use o curinga ponto de interrogação (?) para corresponder a um único caractere. 

Para obter uma lista de todos os serviços e as ações que eles suportam nas AWS Organizations SCPs políticas de permissão do IAM, consulte [Ações, recursos e chaves de condição para AWS serviços](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_actionsconditions.html) no *Guia do usuário do IAM*.

Para obter mais informações, consulte Elementos de [política JSON do IAM: ação e Elementos](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_action.html) da [política JSON do IAM: NotAction](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_notaction.html) no Guia do *usuário do IAM*.

### Exemplo do elemento `Action`
<a name="scp-syntax-action-example"></a>

O seguinte exemplo mostra uma SCP com uma instrução que permite que os administradores de contas deleguem permissões para descrever, iniciar, interromper e encerrar a instâncias do EC2 na conta. Este é um exemplo de uma [lista de permissões](orgs_manage_policies_scps_evaluation.md#how_scps_allow) e é útil quando as políticas `Allow *` padrão ***não*** são anexadas, para que, por padrão, as permissões sejam implicitamente negadas. Se a política `Allow *` padrão ainda estiver anexada à raiz, à UO ou à conta à qual a política a seguir está anexada, a política não terá efeito.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": [
          "ec2:DescribeInstances", "ec2:DescribeImages", "ec2:DescribeKeyPairs",
          "ec2:DescribeSecurityGroups", "ec2:DescribeAvailabilityZones", "ec2:RunInstances",
          "ec2:TerminateInstances", "ec2:StopInstances", "ec2:StartInstances"
        ],
        "Resource": "*"
    }
}
```

------

O exemplo a seguir mostra como é possível [negar o acesso](orgs_manage_policies_scps_evaluation.md#how_scps_deny) a serviços que você não deseja que sejam usados em contas anexadas. Ele pressupõe que as SCPs `"Allow *"` padrão ainda estejam anexadas a todas as UOs e à raiz. Esse exemplo de política impede que os administradores de contas anexadas deleguem permissões para os serviços IAM, Amazon EC2 e Amazon RDS . Qualquer ação de outros serviços pode ser delegada, desde que não haja outra política anexada que a negue.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Deny",
        "Action": [ "iam:*", "ec2:*", "rds:*" ],
        "Resource": "*"
    }
}
```

------

### Exemplo do elemento `NotAction`
<a name="scp-syntax-notaction-example"></a>

O exemplo a seguir mostra como você pode usar um `NotAction` elemento para excluir AWS serviços do efeito da política.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "LimitActionsInRegion",
      "Effect": "Deny",
      "NotAction": "iam:*",
      "Resource": "*",
      "Condition": {
        "StringNotEquals": {
          "aws:RequestedRegion": "us-west-1"
         }
       }
     }
   ]
}
```

------

Com essa declaração, as contas afetadas estão limitadas a realizar ações no especificado Região da AWS, exceto ao usar ações do IAM.

## Elemento `Condition`
<a name="scp-syntax-condition"></a>

Você pode especificar um elemento `Condition` em instruções de permissão e negação em uma SCP.

O exemplo a seguir mostra como usar um elemento condicional com uma instrução de permissão em um SCP para permitir que diretores específicos AWS acessem serviços.

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Sid":"AllowServicesForSpecificPrincipal",
         "Effect":"Allow",
         "Action":[
            "ec2:*",
            "s3:*",
            "rds:*",
            "lambda:*",
            "cloudformation:*",
            "iam:*",
            "cloudwatch:*"
         ],
         "Resource":"*",
         "Condition":{
            "StringEquals":{
               "aws:PrincipalArn":[
                  "arn:aws:iam::123456789012:role/{{specific-role}}"
               ]
            }
         }
      }
   ]
}
```

O exemplo a seguir mostra como usar um elemento condicional com uma declaração de negação em uma SCP para restringir o acesso a qualquer operação fora das regiões `eu-central-1` e `eu-west-1`, exceto as ações nos serviços especificados. 

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "DenyAllOutsideEU",
            "Effect": "Deny",
            "NotAction": [
                "{{cloudfront:*",
                "iam:*",
                "route53:*",
                "support:*}}"
            ],
            "Resource": "*",
            "Condition": {
                "StringNotEquals": {
                    "aws:RequestedRegion": [
                        "{{eu-central-1",
                        "eu-west-1}}"
                    ]
                }
            }
        }
    ]
}
```

------

Para obter mais informações, consulte [IAM JSON Policy Elements: Condition](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) (Elementos da política JSON do IAM: Condição) no *Guia do usuário do IAM*.

## Elemento `Effect`
<a name="scp-syntax-effect"></a>

Cada instrução deve conter um elemento `Effect`. O valor pode ser `Allow` ou `Deny`. Isso afeta todas as ações listadas na mesma instrução.

Para obter mais informações, consulte [Elementos de política JSON do IAM: efeito](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_effect.html) no *Guia do usuário do IAM*.

### `"Effect": "Allow"`
<a name="scp-syntax-effect-allow"></a>

O seguinte exemplo mostra uma SCP com uma instrução que contém um elemento `Effect` com um valor de `Allow` que permite que os usuários da conta executem ações para o serviço Amazon S3. Esse exemplo é útil em uma organização que usa a [estratégia de lista de permissões](orgs_manage_policies_scps_evaluation.md#how_scps_allow) (em que todas as políticas de `FullAWSAccess` padrão são desvinculadas para que as permissões sejam implicitamente negadas por padrão). O resultado é que a instrução [permite](orgs_manage_policies_scps_evaluation.md#how_scps_allow) as permissões do Amazon S3 para todas as contas anexadas:

```
{
    "Statement": {
        "Effect": "Allow",
        "Action": "s3:*",
        "Resource": "*"
    }
}
```

Embora ele use a mesma palavra-chave de valor `Allow` como uma política de permissões do IAM, em uma SCP, ele na realidade não concede permissões a um usuário para fazer alguma coisa. Em vez disso, SCPs atue como filtros que especificam as permissões máximas para as contas em uma organização, unidade organizacional (OU) ou conta. No exemplo anterior, mesmo que um usuário na conta tivesse a política gerenciada `AdministratorAccess` anexada, a SCP limitaria ***todos*** os usuários na conta para apenas ações do Amazon S3.

### `"Effect": "Deny"`
<a name="scp-syntax-effect-deny"></a>

Em uma declaração em que o `Effect` elemento tem um valor de`Deny`, você também pode restringir o acesso a recursos específicos ou definir condições para quando SCPs estão em vigor. 

A seguinte tabela mostra um exemplo de como usar uma chave de condição em uma instrução de negação.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Deny",
        "Action": "ec2:RunInstances",
        "Resource": "arn:aws:ec2:*:*:instance/*",
        "Condition": {
            "StringNotEquals": {
                "ec2:InstanceType": "t2.micro"
            }
        }
    }
}
```

------

Essa instrução em uma SCP define uma proteção para impedir que as contas afetadas (em que a SCP é anexada à própria conta ou à raiz ou UO da organização que contém a conta) executem instâncias do Amazon EC2 se a instância do Amazon EC2 não estiver definida como `t2.micro`. Mesmo que uma política do IAM que permite essa ação seja anexada à conta, a proteção criada pela SCP impedirá isso.

## `Resource`e `NotResource` elemento
<a name="scp-syntax-resource"></a>

Em instruções em que o elemento `Effect` tem um valor de `Allow`, você pode especificar apenas "\*" no elemento `Resource` de uma SCP. Você não pode especificar um recurso individual Amazon Resource Names (ARNs). 

Você pode usar caracteres curinga, como asterisco (\*) ou ponto de interrogação (?) no elemento de recurso:
+ Você também pode usar um asterisco como um curinga para corresponder a várias ações que compartilham parte de um nome. 
+ Use o curinga ponto de interrogação (?) para corresponder a um único caractere. 

Nas declarações em que o `Effect` elemento tem um valor de`Deny`, você *pode* especificar individual ARNs, conforme mostrado no exemplo a seguir.

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

****  

```
{    
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DenyAccessToAdminRole",
      "Effect": "Deny",
      "Action": [
        "iam:AttachRolePolicy",
        "iam:DeleteRole",
        "iam:DeleteRolePermissionsBoundary",
        "iam:DeleteRolePolicy",
        "iam:DetachRolePolicy",
        "iam:PutRolePermissionsBoundary",
        "iam:PutRolePolicy",
        "iam:UpdateAssumeRolePolicy",
        "iam:UpdateRole",
        "iam:UpdateRoleDescription"
      ],
      "Resource": [
        "arn:aws:iam::*:role/{{role-to-deny}}"
      ]
    }
  ]
}
```

------

Esta SCP restringe que as entidades principais do IAM em contas façam alterações em uma função administrativa comum do IAM criada em todas as contas em sua organização.

O exemplo a seguir mostra como usar um elemento `NotResource` para excluir modelos específicos do Amazon Bedrock do efeito da política.

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Sid":"Statement1",
         "Effect":"Deny",
         "Action":[
            "bedrock:InvokeModel",
            "bedrock:InvokeModelWithResponseStream"
         ],
         "NotResource":[
            "arn:aws:bedrock:*::foundation-model/{{model-to-permit}}"
         ]
      }
   ]
}
```

Para obter mais informações, consulte [Elementos da política JSON do IAM: recurso](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_resource.html) no *Guia do usuário do IAM*.

## Elemento `Statement`
<a name="scp-syntax-statement"></a>

Uma SCP consiste em um ou mais elementos `Statement`. Você pode ter apenas uma palavra-chave `Statement` em uma política, mas o valor pode ser uma matriz JSON de instruções (entre os caracteres []).

O exemplo a seguir mostra uma única instrução que consiste em elementos `Effect`, `Action` e `Resource` únicos.

```
    "Statement": {
        "Effect": "Allow",
        "Action": "*",
        "Resource": "*"
    }
```

O exemplo a seguir inclui duas instruções como uma lista de matrizes dentro de um elemento `Statement`. A primeira instrução permite todas as ações, enquanto a segunda nega todas as ações do EC2. O resultado é que um administrador da conta pode delegar qualquer permissão, *exceto* as do Amazon Elastic Compute Cloud (Amazon EC2).

```
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "*",
            "Resource": "*"
        },
        {
            "Effect": "Deny",
            "Action": "ec2:*",
            "Resource": "*"
        }
    ]
```

Para obter mais informações, consulte [Elementos de política JSON do IAM: instrução](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_statement.html) no *Guia do usuário do IAM*.

## Elemento ID da instrução (`Sid`)
<a name="scp-syntax-sid"></a>

O `Sid` é um identificador opcional que você fornece para a instrução da política. Você pode atribuir um valor `Sid` a cada instrução em uma matriz de instruções. A seguinte SCP de exemplo mostra uma instrução `Sid`. 

```
{
    "Statement": {
        "Sid": "AllowsAllActions",
        "Effect": "Allow",
        "Action": "*",
        "Resource": "*"
    }
}
```

Para obter mais informações, consulte [Elementos de política JSON do IAM: Id](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_id.html) no *Guia do usuário do IAM*.

## Elemento `Version`
<a name="scp-syntax-version"></a>

Cada SCP deve incluir um elemento `Version` com o valor `"2012-10-17"`. Este é o mesmo valor da versão mais recente das políticas de permissão do IAM.

Para obter mais informações, consulte [Elementos de política JSON do IAM: versão](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_version.html) no *Guia do usuário do IAM*.

## Elementos sem suporte
<a name="scp-syntax-unsupported"></a>

Os seguintes elementos não são compatíveis com SCPs:
+ `NotPrincipal`
+ `Principal`