Permissões de exportação de diário no QLDB - Amazon Quantum Ledger Database (Amazon QLDB)

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

Permissões de exportação de diário no QLDB

Antes de enviar uma solicitação de exportação de diário no Amazon QLDB, você deve fornecer ao QLDB permissões de gravação no bucket especificado do Amazon S3. Se você escolher um cliente gerenciado AWS KMS key como o tipo de criptografia de objeto para seu bucket Amazon S3, você também deverá fornecer ao QLDB permissões para usar sua chave de criptografia simétrica especificada. O Amazon RDS não oferece suporte para chaves do KMS assimétricas.

Para fornecer ao seu trabalho de exportação as permissões necessárias, você pode fazer com que o QLDB assuma um perfil de serviço do IAM com as políticas de permissões apropriadas. O perfil de serviço é um perfil do IAMhttps://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html que um serviço assume para realizar 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) no Guia do usuário do IAM.

nota

Para transmitir uma função ao QLDB ao solicitar uma exportação 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 à qldb:ExportJournalToS3 permissão no recurso de contabilidade do QLDB.

Para saber como controlar o acesso ao QLDB usando o IAM, consulte Como o Amazon QLDB funciona com o IAM. Para ver um exemplo de política do QLDB, consulte Exemplos de políticas baseadas em identidade para o Amazon QLDB.

Neste exemplo, você cria uma função que permite ao QLDB gravar objetos em um bucket do Amazon S3 em seu nome. Para obter mais informações, consulte Criar um perfil para delegar permissões a um AWS service (Serviço da AWS) no Guia do usuário do IAM.

Se você estiver exportando um diário do QLDB pela primeira vez, primeiro crie uma função do IAM com as políticas apropriadas fazendo o seguinte. Conta da AWS Ou você pode usar o console do QLDB para criar automaticamente a função para você. Caso contrário, você poderá escolher uma função que você criou anteriormente.

Criação de uma política de permissões

Conclua as etapas a seguir para criar uma política de permissões para um trabalho de exportação de diário do QLDB. Este exemplo mostra uma política de bucket do Amazon S3 que concede permissões ao QLDB para gravar objetos em seu bucket especificado. Se aplicável, o exemplo também mostra uma política de chave que permite que o QLDB use sua chave KMS de criptografia simétrica.

Para obter mais informações sobre políticas de bucket do Amazon S3, consulte Uso de políticas de bucket e políticas de usuário no Guia do Usuário Amazon Simple Storage Service. Para obter mais informações sobre políticas de chave do AWS KMS , consulte Uso de políticas de chave no AWS KMS no AWS Key Management Service Guia do desenvolvedor.

nota

Seu bucket do Amazon S3 e sua chave KMS devem estar no mesmo livro contábil do Região da AWS QLDB.

Para usar o editor de políticas JSON para criar uma política
  1. Faça login AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. Na coluna de navegação à esquerda, selecione Políticas.

    Se essa for a primeira vez que você escolhe Políticas, a página Bem-vindo às políticas gerenciadas será exibida. Escolha Começar.

  3. Na parte superior da página, escolha Criar política.

  4. Selecione a guia JSON.

  5. Insira um documento de política JSON.

    • Se você estiver usando uma chave KMS gerenciada pelo cliente para criptografia de objetos do Amazon S3, use o seguinte exemplo de documento de política. Para usar essa política, substitua DOC-EXAMPLE-BUCKET, us-east-1, 123456789012 e 1234abcd-12ab-34cd-56ef-1234567890ab no exemplo por suas próprias informações.

      { "Version": "2012-10-17", "Statement": [ { "Sid": "QLDBJournalExportS3Permission", "Action": [ "s3:PutObjectAcl", "s3:PutObject" ], "Effect": "Allow", "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" }, { "Sid": "QLDBJournalExportKMSPermission", "Action": [ "kms:GenerateDataKey" ], "Effect": "Allow", "Resource": "arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab" } ] }
    • Para outros tipos de criptografia, use o seguinte exemplo de documento de política. Para usar essa política, substitua DOC-EXAMPLE-BUCKET no exemplo pelo seu próprio nome de bucket do Amazon S3.

      { "Version": "2012-10-17", "Statement": [ { "Sid": "QLDBJournalExportS3Permission", "Action": [ "s3:PutObjectAcl", "s3:PutObject" ], "Effect": "Allow", "Resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" } ] }
  6. Escolha Revisar política.

    nota

    Você pode alternar entre as guias Editor visual e JSON sempre que quiser. No entanto, se você fizer alterações ou escolher Revisar política na guia Editor visual, o IAM pode reestruturar sua política de forma a otimizá-la para o editor visual. Para obter mais informações, consulte Restruturação de política no Manual do usuário do IAM.

  7. Na página Review policy (Revisar política), insira um Name (Nome) e uma Description (Descrição) opcional para a política que você está criando. Revise o Resumo da política para ver as permissões que são concedidas pela política. Em seguida, escolha Criar política para salvar seu trabalho.

Criar um perfil do IAM

Depois de criar uma política de permissões para seu trabalho de exportação de diário do QLDB, você pode criar um perfil do IAM e anexar sua política a ela.

Para criar um perfil de serviço para QLDB (console do IAM)
  1. Faça login AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação do console do IAM, escolha Funções e, em seguida, Criar função.

  3. Em Tipo de Entidade Confiável, escolha AWS service (Serviço da AWS).

  4. Para Serviço ou caso de uso, escolha QLDB e, em seguida, escolha o caso de uso do QLDB.

  5. Escolha Próximo.

  6. Selecione a caixa ao lado da política que você criou nas etapas anteriores.

  7. (Opcional) Defina um limite de permissões. Esse é um atributo avançado que está disponível para perfis de serviço, mas não para perfis vinculados ao serviço.

    1. Abra a seção Definir limite de permissões e escolha Usar um limite de permissões para controlar o número máximo de permissões do perfil.

      O IAM inclui uma lista das políticas AWS gerenciadas e gerenciadas pelo cliente em sua conta.

    2. Selecione a política a ser usada para o limite de permissões.

  8. Escolha Próximo.

  9. Insira um nome de perfil ou um sufixo de nome de perfil para ajudar a identificar a finalidade do perfil.

    Importante

    Quando nomear um perfil, observe o seguinte:

    • Os nomes das funções devem ser exclusivos dentro de você Conta da AWS e não podem ser diferenciados por maiúsculas e minúsculas.

      Por exemplo, não crie dois perfis denominados PRODROLE e prodrole. Quando usado em uma política ou como parte de um ARN, o nome de perfil diferencia maiúsculas de minúsculas. No entanto, quando exibido para os clientes no console, como durante o processo de login, o nome de perfil diferencia maiúsculas de minúsculas.

    • Não é possível editar o nome do perfil depois de criá-lo porque outras entidades podem referenciar o perfil.

  10. (Opcional) Em Descrição, insira uma descrição para o perfil.

  11. (Opcional) Para editar os casos de uso e as permissões do perfil, escolha Editar nas seções Etapa 1: selecionar entidades confiáveis ou Etapa 2: adicionar permissões.

  12. (Opcional) Para ajudar a identificar, organizar ou pesquisar o perfil, adicione tags como pares de chave-valor. Para obter mais informações sobre o uso de tags no IAM, consulte Marcar recursos do IAM no Guia do usuário do IAM.

  13. Reveja a função e escolha Criar função.

O documento JSON a seguir é um exemplo de política de confiança que permite ao QLDB assumir um perfil do IAM com permissões específicas anexadas.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "qldb.amazonaws.com" }, "Action": [ "sts:AssumeRole" ], "Condition": { "ArnEquals": { "aws:SourceArn": "arn:aws:qldb:us-east-1:123456789012:*" }, "StringEquals": { "aws:SourceAccount": "123456789012" } } } ] }
nota

O exemplo a seguir mostra como é possível usar as chaves de contexto de condição globais aws:SourceArn e aws:SourceAccount para evitar o problema de substituto confuso. Com essa política de confiança, o QLDB pode assumir a função de qualquer recurso do QLDB somente na conta 123456789012.

Para ter mais informações, consulte Prevenção contra o ataque do “substituto confuso” em todos os serviços.

Depois de criar sua função do IAM, retorne ao console do QLDB e atualize a página Criar tarefa de exportação para que ele possa encontrar sua nova função.