

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

# Como o Amazon QLDB funciona com o IAM
<a name="security_iam_service-with-iam"></a>

Antes de usar o IAM para gerenciar o acesso ao QLDB, saiba quais atributos do IAM estão disponíveis para uso com o QLDB.

**Importante**  
Aviso de fim do suporte: os clientes existentes poderão usar o Amazon QLDB até o final do suporte em 31/07/2025. Para obter mais detalhes, consulte [Migrar um Amazon QLDB Ledger para o Amazon](https://aws.amazon.com/blogs/database/migrate-an-amazon-qldb-ledger-to-amazon-aurora-postgresql/) Aurora PostgreSQL.






**Atributos do IAM que você pode usar com o Amazon QLDB.**  

| Atributo do IAM | Suporte do QLDB | 
| --- | --- | 
|  [Políticas baseadas em identidade](#security_iam_service-with-iam-id-based-policies)  |   Sim  | 
|  [Políticas baseadas em recurso](#security_iam_service-with-iam-resource-based-policies)  |   Não   | 
|  [Ações de políticas](#security_iam_service-with-iam-id-based-policies-actions)  |   Sim  | 
|  [Recursos de políticas](#security_iam_service-with-iam-id-based-policies-resources)  |   Sim  | 
|  [Chaves de condição de políticas](#security_iam_service-with-iam-id-based-policies-conditionkeys)  |   Sim  | 
|  [ACLs](#security_iam_service-with-iam-acls)  |   Não   | 
|  [ABAC (tags em políticas)](#security_iam_service-with-iam-tags)  |   Sim  | 
|  [Credenciais temporárias](#security_iam_service-with-iam-roles-tempcreds)  |   Sim  | 
|  [Permissões de entidade principal](#security_iam_service-with-iam-principal-permissions)  |   Não   | 
|  [Perfis de serviço](#security_iam_service-with-iam-roles-service)  |   Sim  | 
|  [Perfis vinculados a serviço](#security_iam_service-with-iam-roles-service-linked)  |   Não   | 

*Para ter uma visão de alto nível de como o QLDB e Serviços da AWS outros funcionam com a maioria dos recursos do IAM, [Serviços da AWS consulte esse trabalho com o IAM no Guia do usuário](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) do IAM.*

## Políticas baseadas em identidade para o QLDB
<a name="security_iam_service-with-iam-id-based-policies"></a>

**Compatível com políticas baseadas em identidade:** sim

As políticas baseadas em identidade são documentos de políticas de permissões JSON que você pode anexar a uma identidade, como usuário do IAM, grupo de usuários ou perfil. Essas políticas controlam quais ações os usuários e perfis podem realizar, em quais recursos e em que condições. Para saber como criar uma política baseada em identidade, consulte [Definir permissões personalizadas do IAM com as políticas gerenciadas pelo cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) no *Guia do Usuário do IAM*.

Com as políticas baseadas em identidade do IAM, é possível especificar ações e recursos permitidos ou negados, assim como as condições sob as quais as ações são permitidas ou negadas. Você não pode especificar a entidade principal em uma política baseada em identidade porque ela se aplica ao usuário ou perfil ao qual ela está anexada. Para saber mais sobre todos os elementos que podem ser usados em uma política JSON, consulte [Referência de elemento de política JSON do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) no *Guia do usuário do IAM*.

### Exemplos de políticas baseadas em identidade para QLDB
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Para visualizar exemplos de políticas baseadas em identidade do QLDB, consulte [Exemplos de políticas baseadas em identidade para o Amazon QLDB](security_iam_id-based-policy-examples.md).

## Políticas baseadas em recursos no QLDB
<a name="security_iam_service-with-iam-resource-based-policies"></a>

**Compatibilidade com políticas baseadas em recursos:** não 

Políticas baseadas em recursos são documentos de políticas JSON que você anexa a um recurso. São exemplos de políticas baseadas em recursos as *políticas de confiança de perfil* do IAM e as *políticas de bucket* do Amazon S3. Em serviços compatíveis com políticas baseadas em recursos, os administradores de serviço podem usá-las para controlar o acesso a um recurso específico. Para o atributo ao qual a política está anexada, a política define quais ações uma entidade principal especificado pode executar nesse atributo e em que condições. Você deve [especificar uma entidade principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) em uma política baseada em recursos. Os diretores podem incluir contas, usuários, funções, usuários federados ou. Serviços da AWS

Para permitir o acesso entre contas, você pode especificar uma conta inteira ou as entidades do IAM em outra conta como a entidade principal em uma política baseada em recursos. Adicionar uma entidade principal entre contas à política baseada em recurso é apenas metade da tarefa de estabelecimento da relação de confiança. Quando o principal e o recurso são diferentes Contas da AWS, um administrador do IAM na conta confiável também deve conceder permissão à entidade principal (usuário ou função) para acessar o recurso. Eles concedem permissão ao anexar uma política baseada em identidade para a entidade. No entanto, se uma política baseada em recurso conceder acesso a uma entidade principal na mesma conta, nenhuma política baseada em identidade adicional será necessária. Consulte mais informações em [Acesso a recursos entre contas no IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) no *Guia do usuário do IAM*.

## Ações de políticas para QLDB
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

**Compatível com ações de políticas:** sim

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual **entidade principal** pode executar **ações** em quais **recursos** e em que **condições**.

O elemento `Action` de uma política JSON descreve as ações que podem ser usadas para permitir ou negar acesso em uma política. As ações de política geralmente têm o mesmo nome da operação de AWS API associada. Existem algumas exceções, como *ações somente de permissão*, que não têm uma operação de API correspondente. Algumas operações também exigem várias ações em uma política. Essas ações adicionais são chamadas de *ações dependentes*.

Incluem ações em uma política para conceder permissões para executar a operação associada.



Para ver uma lista de ações de QLDB, consulte [Ações definidas pelo Amazon QLDB](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonqldb.html#amazonqldb-actions-as-permissions) na *Referência de autorização do serviço*.

As ações de políticas no QLDB usam o seguinte prefixo antes da ação:

```
qldb
```

Para especificar várias ações em uma única instrução, separe-as com vírgulas.

```
"Action": [
      "qldb:action1",
      "qldb:action2"
]
```





Você também pode especificar várias ações usando caracteres-curinga (\$1). Por exemplo, para especificar todas as ações que começam com a palavra `Describe`, inclua a seguinte ação:

```
"Action": "qldb:Describe*"
```

Para interagir com a API de dados transacionais do QLDB (*sessão QLDB*) executando instruções [PartiQL](ql-reference.md) em um ledger, você deve dar permissão para a ação `SendCommand` da seguinte maneira.

```
"Action": "qldb:SendCommand"
```

Para ledgers no modo de permissões `STANDARD`, consulte as permissões adicionais necessárias [Referência de permissões PartiQL](getting-started-standard-mode.md#security_iam_partiql-reference) para cada comando partiQL.

Para visualizar exemplos de políticas baseadas em identidade do QLDB, consulte [Exemplos de políticas baseadas em identidade para o Amazon QLDB](security_iam_id-based-policy-examples.md).

## Recursos de políticas para QLDB
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

**Compatível com recursos de políticas:** sim

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual **entidade principal** pode executar **ações** em quais **recursos** e em que **condições**.

O elemento de política JSON `Resource` especifica o objeto ou os objetos aos quais a ação se aplica. As instruções devem incluir um elemento `Resource` ou `NotResource`. Como prática recomendada, especifique um recurso usando seu [nome do recurso da Amazon (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). Isso pode ser feito para ações que oferecem compatibilidade com um tipo de recurso específico, conhecido como *permissões em nível de recurso*.

Para ações que não oferecem compatibilidade com permissões em nível de recurso, como operações de listagem, use um curinga (\$1) para indicar que a instrução se aplica a todos os recursos.

```
"Resource": "*"
```

*Para ver uma lista dos tipos de recursos do QLDB e ARNs seus, [consulte Recursos definidos pelo Amazon QLDB](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonqldb.html#amazonqldb-resources-for-iam-policies) na Referência de autorização de serviço.* Para saber com quais ações você pode especificar o ARN de cada recurso, consulte [Ações definidas pelo Amazon QLDB](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonqldb.html#amazonqldb-actions-as-permissions).

No QLDB, os principais recursos são *ledgers*. O QLDB é também compatível com tipos de recursos adicionais: *tabelas* e *fluxos*. No entanto, você pode criar tabelas e fluxos somente no contexto de um ledger existente.

Um índice QLDB é uma visão materializada de uma coleção não ordenada de revisões de documentos do diário contábil. No modo de permissões `STANDARD` de um ledger, você deve criar políticas do IAM que concedam permissões para executar instruções PartiQL nesse recurso de tabela. Com permissões em um recurso de tabela, você pode executar instruções que acessam o estado atual da tabela. Você também pode consultar o histórico de revisões da tabela usando a função `history()` incorporada. Para saber mais, consulte [Introdução ao modo de permissões padrão no Amazon QLDB](getting-started-standard-mode.md).

**nota**  
A instrução `CREATE TABLE` cria uma tabela com um ID exclusivo e o nome da tabela fornecido. O nome da tabela fornecido deve ser exclusivo entre todas as tabelas ativas. No entanto, o QLDB permite que você desative tabelas, então pode haver várias tabelas inativas que compartilham o mesmo nome de tabela. Portanto, os recursos de tabela ARNs se referem ao ID exclusivo atribuído pelo sistema em vez do nome da tabela definido pelo usuário.

Cada ledger também fornece um recurso de catálogo definido pelo sistema que você pode consultar para listar todas as tabelas e índices em um ledger. Para obter mais informações sobre modelo de objeto de dados do QLDB, consulte [Principais conceitos e terminologia no Amazon QLDB](ledger-structure.md).

Esses recursos têm características únicas ARNs associadas a eles, conforme mostrado na tabela a seguir.


****  

| Tipo de recurso | ARN | 
| --- | --- | 
|  ledger  |  arn:\$1\$1Partition\$1:qldb:\$1\$1Region\$1:\$1\$1Account\$1:ledger/\$1\$1LedgerName\$1  | 
|  table  |  arn:\$1\$1Partition\$1:qldb:\$1\$1Region\$1:\$1\$1Account\$1:ledger/\$1\$1LedgerName\$1/table/\$1\$1TableId\$1  | 
|  catalog  |  arn:\$1\$1Partition\$1:qldb:\$1\$1Region\$1:\$1\$1Account\$1:ledger/\$1\$1LedgerName\$1/information\$1schema/user\$1tables  | 
|  stream  |  arn:\$1\$1Partition\$1:qldb:\$1\$1Region\$1:\$1\$1Account\$1:stream/\$1\$1LedgerName\$1/\$1\$1StreamId\$1  | 

Por exemplo, para especificar o recurso `myExampleLedger` em sua instrução, use o seguinte ARN.

```
"Resource": "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger"
```





Para especificar vários recursos em uma única instrução, separe-os ARNs com vírgulas.

```
"Resource": [
      "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger1",
      "arn:aws:qldb:us-east-1:123456789012:ledger/myExampleLedger2"
]
```

Para visualizar exemplos de políticas baseadas em identidade do QLDB, consulte [Exemplos de políticas baseadas em identidade para o Amazon QLDB](security_iam_id-based-policy-examples.md).

## Chaves de condição de políticas para QLDB
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

**Compatível com chaves de condição de política específicas de serviço:** sim

Os administradores podem usar políticas AWS JSON para especificar quem tem acesso ao quê. Ou seja, qual **entidade principal** pode executar **ações** em quais **recursos** e em que **condições**.

O elemento `Condition` (ou *bloco* `Condition`) permite que você especifique condições nas quais uma instrução estiver em vigor. O elemento `Condition` é opcional. É possível criar expressões condicionais que usem [agentes de condição](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), como “igual a” ou “menor que”, para fazer a condição da política corresponder aos valores na solicitação. 

Se você especificar vários elementos de `Condition` em uma declaração ou várias chaves em um único elemento de `Condition`, a AWS os avaliará usando uma operação lógica `AND`. Se você especificar vários valores para uma única chave de condição, AWS avalia a condição usando uma `OR` operação lógica. Todas as condições devem ser atendidas antes que as permissões da instrução sejam concedidas.

 Você também pode usar variáveis de espaço reservado ao especificar condições. Por exemplo, é possível conceder a um usuário do IAM permissão para acessar um recurso somente se ele estiver marcado com seu nome de usuário do IAM. Para obter mais informações, consulte [Elementos da política do IAM: variáveis e tags](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html) no *Guia do usuário do IAM*. 

AWS suporta chaves de condição globais e chaves de condição específicas do serviço. Para ver todas as chaves de condição AWS globais, consulte as [chaves de contexto de condição AWS global](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) no *Guia do usuário do IAM*.

Para ver uma lista de chaves de condição do QLDB, consulte [Chaves de condição do Amazon QLDB](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonqldb.html#amazonqldb-policy-keys) na *Referência de autorização do serviço*. Para saber com quais ações e recursos é possível usar a chave de condição, consulte [Ações definidas pelo Amazon QLDB](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonqldb.html#amazonqldb-actions-as-permissions).

As ações `PartiQLDropIndex` e `PartiQLDropTable` oferecem suporte à chave de condição `qldb:Purge`. Essa condição filtra o acesso pelo valor de `purge` especificado em uma instrução do PartiQL `DROP`. No entanto, o QLDB atualmente oferece suporte `purge = true` apenas `DROP INDEX` para declarações `purge = false` e para declarações `DROP TABLE`. Outras ações do QLDB oferecem suporte a algumas chaves de condição globais.

Para visualizar exemplos de políticas baseadas em identidade do QLDB, consulte [Exemplos de políticas baseadas em identidade para o Amazon QLDB](security_iam_id-based-policy-examples.md).

## Listas de controle de acesso (ACLs) no QLDB
<a name="security_iam_service-with-iam-acls"></a>

**Suportes ACLs:** Não 

As listas de controle de acesso (ACLs) controlam quais diretores (membros da conta, usuários ou funções) têm permissões para acessar um recurso. ACLs são semelhantes às políticas baseadas em recursos, embora não usem o formato de documento de política JSON.

## Controle de acesso baseado em atributos (ABAC) com QLDB
<a name="security_iam_service-with-iam-tags"></a>

**Compatível com ABAC (tags em políticas):** sim

O controle de acesso por atributo (ABAC) é uma estratégia de autorização que define as permissões com base em atributos. Em AWS, esses atributos são chamados de *tags*. Você pode anexar tags a entidades do IAM (usuários ou funções) e a vários AWS recursos. Marcar de entidades e atributos é a primeira etapa do ABAC. Em seguida, você cria políticas de ABAC para permitir operações quando a tag da entidade principal corresponder à tag do recurso que ela estiver tentando acessar.

O ABAC é útil em ambientes que estão crescendo rapidamente e ajuda em situações em que o gerenciamento de políticas se torna um problema.

Para controlar o acesso baseado em tags, forneça informações sobre as tags no [elemento de condição](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) de uma política usando as `aws:ResourceTag/key-name`, `aws:RequestTag/key-name` ou chaves de condição `aws:TagKeys`.

Se um serviço for compatível com as três chaves de condição para cada tipo de recurso, o valor será **Sim** para o serviço. Se um serviço for compatível com as três chaves de condição somente para alguns tipos de recursos, o valor será **Parcial**

Para obter mais informações sobre o ABAC, consulte [Definir permissões com autorização do ABAC](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) no *Guia do usuário do IAM*. Para visualizar um tutorial com etapas para configurar o ABAC, consulte [Usar controle de acesso baseado em atributos (ABAC)](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html) no *Guia do usuário do IAM*.

Para obter mais informações sobre recursos de marcação do QLDB, consulte [Como marcar recursos do Amazon QLDB](tagging.md).

Para visualizar um exemplo de política baseada em identidade para limitar o acesso a um recurso baseado em tags desse recurso, consulte [Atualização de ledgers do QLDB com base em tags](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-update-ledger-tags).

## Usar credenciais temporárias com o QLDB
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

**Compatível com credenciais temporárias:** sim

Alguns Serviços da AWS não funcionam quando você faz login usando credenciais temporárias. Para obter informações adicionais, incluindo quais Serviços da AWS funcionam com credenciais temporárias, consulte Serviços da AWS “[Trabalhe com o IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)” no *Guia do usuário do IAM*.

Você está usando credenciais temporárias se fizer login Console de gerenciamento da AWS usando qualquer método, exceto um nome de usuário e senha. Por exemplo, quando você acessa AWS usando o link de login único (SSO) da sua empresa, esse processo cria automaticamente credenciais temporárias. Você também cria automaticamente credenciais temporárias quando faz login no console como usuário e, em seguida, alterna perfis. Para obter mais informações sobre como alternar funções, consulte [Alternar para um perfil do IAM (console)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) no *Guia do usuário do IAM*.

Você pode criar manualmente credenciais temporárias usando a AWS API AWS CLI ou. Em seguida, você pode usar essas credenciais temporárias para acessar AWS. AWS recomenda que você gere credenciais temporárias dinamicamente em vez de usar chaves de acesso de longo prazo. Para obter mais informações, consulte [Credenciais de segurança temporárias no IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html).

## Permissões de entidade principal entre serviços para o QLDB
<a name="security_iam_service-with-iam-principal-permissions"></a>

**Compatível com o recurso de encaminhamento de sessões de acesso (FAS):** Não 

 Quando você usa um usuário ou uma função do IAM para realizar ações AWS, você é considerado principal. Ao usar alguns serviços, você pode executar uma ação que inicia outra ação em um serviço diferente. O FAS usa as permissões do diretor chamando um AWS service (Serviço da AWS), combinadas com a solicitação AWS service (Serviço da AWS) para fazer solicitações aos serviços posteriores. As solicitações do FAS são feitas somente quando um serviço recebe uma solicitação que requer interações com outros Serviços da AWS ou com recursos para ser concluída. Nesse caso, você precisa ter permissões para executar ambas as ações. Para obter detalhes da política ao fazer solicitações de FAS, consulte [Sessões de acesso direto](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_forward_access_sessions.html). 

## Perfis de serviço do QLDB
<a name="security_iam_service-with-iam-roles-service"></a>

**Compatível com perfis de serviço:** sim

 O perfil de serviço é um [perfil do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) que um serviço assume para executar ações em seu nome. Um administrador do IAM pode criar, modificar e excluir um perfil de serviço do IAM. Para obter mais informações, consulte [Criar um perfil para delegar permissões a um AWS service (Serviço da AWS)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) no *Guia do Usuário do IAM*. 

**Atenção**  
Alterar as permissões de um perfil de serviço pode prejudicar a funcionalidade do QLDB Edite os perfis de serviço somente quando o QLDB orientar você a fazê-lo.

O QLDB suporta perfis de serviço para `ExportJournalToS3` as operações `StreamJournalToKinesis` e de API, conforme descrito na seção a seguir.

### Selecionar um perfil do IAM no QLDB
<a name="security_iam_service-with-iam-roles-choose"></a>

Ao exportar ou transmitir blocos de diário no QLDB, você deve escolher uma função para permitir que o Amazon QLDB grave objetos em um determinado destino em seu nome. Se você já tiver criado um perfil de serviço, o QLDB fornecerá uma lista de funções da qual escolher. É importante escolher uma função que permita o acesso para gravar em seu bucket específico do Amazon S3 para uma exportação ou em seu recurso específico do Amazon Kinesis Data Streams para um fluxo. Para ter mais informações, consulte [Permissões de exportação de diário no QLDB](export-journal.perms.md) ou [Permissões de fluxo no QLDB](streams.perms.md).

**nota**  
Para transmitir um perfil ao QLDB ao solicitar uma exportação ou fluxo de diário, você deve ter permissões para realizar a ação `iam:PassRole` no recurso do perfil do IAM. Isso é um acréscimo às permissões para execução `qldb:ExportJournalToS3` no recurso contábil do QLDB ou `qldb:StreamJournalToKinesis` no sub-recurso de fluxo do QLDB.

## Funções vinculadas ao serviço para o QLDB
<a name="security_iam_service-with-iam-roles-service-linked"></a>

**Compatível com perfis vinculados ao serviço:** Não 

 Uma função vinculada ao serviço é um tipo de função de serviço vinculada a um. AWS service (Serviço da AWS) O serviço pode presumir o perfil para executar uma ação em seu nome. As funções vinculadas ao serviço aparecem em você Conta da AWS e são de propriedade do serviço. Um administrador do IAM pode visualizar, mas não editar as permissões para perfis vinculados a serviço. 

Para obter detalhes sobre como criar ou gerenciar funções vinculadas a serviços, consulte [Serviços da AWS que funcionam com o IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html). Encontre um serviço na tabela que inclua um `Yes` na coluna **Função vinculada ao serviço**. Escolha o link **Sim** para visualizar a documentação do perfil vinculado a serviço desse serviço.