

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á.

# Tamanho da política por recurso
<a name="policy-size-per-resource"></a>

As permissões verificadas limitam o tamanho total de todas as políticas que fazem referência ao mesmo recurso. Esse limite é o tamanho da * política por * cota de recursos e seu valor padrão é 200.000 bytes. Quando você liga para `CreatePolicy` ou`UpdatePolicy`, as Permissões verificadas calculam o novo total para o recurso referenciado. Se o novo total exceder a cota, a solicitação falhará com a. `ServiceQuotaExceededException`

As políticas que não especificam um recurso se aplicam a todos os recursos. Essas políticas compartilham um total separado para o `"unspecified"` recurso, que é limitado ao mesmo valor da cota.

Para ver a lista de todas as cotas de permissões verificadas, consulte[Cotas do Amazon Verified Permissions](quotas.md).

**Topics**
+ [Como os tamanhos das políticas são calculados](#policy-size-per-resource-calculation)
+ [Permanecer dentro da cota](#policy-size-per-resource-manage)
+ [Template-linked exemplo de tamanho da política](#policy-size-per-resource-example)

## Como os tamanhos das políticas são calculados
<a name="policy-size-per-resource-calculation"></a>

Cada política contribui para o total de um recurso da seguinte forma:
+ **Políticas estáticas ** — Uma política estática contribui com seu tamanho total. Esse é o mesmo valor que é medido em relação à * cota * de tamanho da política.
+ **Template-linked políticas ** — Uma política vinculada a um modelo contribui com o tamanho combinado do principal e do recurso usado para instanciá-la. Se você não especificar o principal ou o recurso, seu comprimento será contado como 0. O tamanho do corpo do modelo de política em si não conta para essa cota.

Cada política também adiciona uma sobrecarga fixa de até algumas centenas de bytes ao total. Template-linked as políticas adicionam mais sobrecarga do que as políticas estáticas.

## Permanecer dentro da cota
<a name="policy-size-per-resource-manage"></a>

Se seu aplicativo se aproximar do tamanho da * política por * cota de recursos, considere as seguintes estratégias:
+ **Use o tipo de política apropriado. ** Se muitas políticas concederem permissões semelhantes no mesmo recurso, os modelos de políticas poderão reduzir o consumo de armazenamento do seu repositório de políticas. Cada política vinculada a um modelo armazena somente seu principal e seu recurso. O modelo de política armazena a declaração compartilhada uma vez, mas cada política vinculada também carrega uma sobrecarga fixa de armazenamento. Os modelos só se pagam quando a declaração compartilhada é grande o suficiente para compensar essa sobrecarga, aproximadamente 200 bytes ou mais. Abaixo desse limite, as políticas estáticas individuais consomem menos espaço. Para obter mais informações, consulte [Modelos de política de permissões verificadas da Amazon e políticas vinculadas a modelos](policy-templates.md).
+ **Especifique os principais e os recursos no escopo da política. ** As políticas que não especificam um recurso compartilham um único total do `"unspecified"` recurso em todo o repositório de políticas. A definição do escopo de cada política para um recurso específico distribui suas políticas em totais separados, um para cada recurso.
+ **Agrupe seus diretores e recursos. ** Em vez de escrever uma política para cada diretor, escreva uma política para um grupo e adicione diretores ao grupo. O agrupamento de recursos em contêineres também pode reduzir o número de políticas que fazem referência a um único recurso.
+ **Solicite um aumento da cota**. Você pode solicitar um aumento dessa cota se o design da sua política atender a determinadas restrições. Para se qualificar, suas políticas devem especificar o principal ou o recurso no escopo da política. Um aumento também pode reduzir o número de pais hierárquicos que seus diretores e recursos podem ter. Mesmo com uma cota aumentada, um sublimite de 200.000 bytes ainda se aplica às políticas que fazem referência ao mesmo principal e ao mesmo recurso. Você não pode solicitar um aumento desse sublimite.

## Template-linked exemplo de tamanho da política
<a name="policy-size-per-resource-example"></a>

Para descobrir como as políticas vinculadas a modelos contribuem para o tamanho da * política por * cota de recursos, adicione o tamanho do principal e o tamanho do recurso. Se você não especificar um recurso, as Permissões verificadas contarão seu tamanho em relação ao total do `"unspecified"` recurso.

Analise o seguinte modelo:

```
permit (
  principal in ?principal,
  action in
    [MyApplication::Action::"ContentManagement",
     MyApplication::Action::"AccountAdministration",
     MyApplication::Action::"BillingOperations"],
  resource in ?resource
)
when {
  resource has authorizedTenantIds &&
  principal has tenantId &&
  resource.authorizedTenantIds.contains(principal.tenantId)
};
```

Crie as seguintes políticas a partir desse modelo:

```
TemplateLinkedPolicy {
  policyId: "policy1",
  templateId: "template1",
  principal: User::"alice",
  resource: Photo::"car.jpg"
}

TemplateLinkedPolicy {
  policyId: "policy2",
  templateId: "template1",
  principal: User::"bob",
  resource: Photo::"boat.jpg"
}

TemplateLinkedPolicy {
  policyId: "policy3",
  templateId: "template1",
  principal: User::"jane",
  resource: Photo::"car.jpg"
}

TemplateLinkedPolicy {
  policyId: "policy4",
  templateId: "template1",
  principal: User::"jane",
  resource
}
```

Calcule o tamanho dessas políticas contando os bytes no `principal` e `resource` para cada uma. As permissões verificadas medem o tamanho em UTF-8 bytes. Os caracteres no intervalo ASCII imprimível contam como 1 byte cada, mas outros caracteres podem usar mais. Os exemplos a seguir usam somente caracteres ASCII, então cada caractere conta como 1 byte. Esses cálculos excluem a sobrecarga fixa. Seus totais reais serão maiores.

O tamanho de `policy1` é o comprimento do principal `User::"alice"` (13) mais o comprimento do recurso `Photo::"car.jpg"` (16). O total é 13 \+ 16 = 29 bytes.

O tamanho de `policy2` é o comprimento do principal `User::"bob"` (11) mais o comprimento do recurso `Photo::"boat.jpg"` (17). O total é 11 \+ 17 = 28 bytes.

O tamanho de `policy3` é o comprimento do principal `User::"jane"` (12) mais o comprimento do recurso `Photo::"car.jpg"` (16). O total é 12 \+ 16 = 28 bytes.

O tamanho de `policy4` é o comprimento do principal `User::"jane"` (12) mais o comprimento do recurso (0). O total é 12 \+ 0 = 12 bytes.

Como `policy2` é a única política que faz referência ao recurso`Photo::"boat.jpg"`, o tamanho total do recurso é de 28 bytes.

Como `policy1` `policy3` ambos fazem referência ao recurso`Photo::"car.jpg"`, o tamanho total do recurso é 29 \+ 28 = 57 bytes.

Como `policy4` é a única política que faz referência ao `"unspecified"` recurso, o tamanho total do recurso é de 12 bytes.