View a markdown version of this page

AWS CloudTrail exemplos de políticas baseadas em recursos - AWS CloudTrail

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

AWS CloudTrail exemplos de políticas baseadas em recursos

Esta seção fornece exemplos de políticas baseadas em recursos para painéis, armazenamentos de dados de eventos e canais do CloudTrail Lake.

CloudTrail oferece suporte aos seguintes tipos de políticas baseadas em recursos:

  • Resource-based políticas sobre canais usados para integrações CloudTrail do Lake com fontes de eventos fora do AWS. A política baseada em recursos do canal define quais entidades principais (contas, usuários, funções e usuários federados) podem chamar PutAuditEvents no canal para entregar eventos para o armazenamento de dados do evento de destino. Para obter mais informações sobre como criar integrações com o CloudTrail Lake, consulteCrie uma integração com uma fonte de eventos fora do AWS.

  • Resource-based políticas para controlar quais diretores podem realizar ações em seu armazenamento de dados de eventos. Você pode usar políticas baseadas em recursos para conceder acesso entre contas aos datastores de eventos.

  • Resource-based políticas em painéis para permitir CloudTrail a atualização de um painel do CloudTrail Lake no intervalo que você define ao definir um cronograma de atualização para um painel. Para obter mais informações, consulte Defina um cronograma de atualização para um painel personalizado com o console CloudTrail.

Resource-based exemplos de políticas para canais

A política baseada em recursos do canal define quais entidades principais (contas, usuários, funções e usuários federados) podem chamar PutAuditEvents no canal para entregar eventos para o armazenamento de dados do evento de destino.

As informações necessárias para a política são determinadas pelo tipo de integração.

  • Para uma integração direta, CloudTrail exige que a política contenha as Conta da AWS IDs do parceiro e exige que você insira a ID externa exclusiva fornecida pelo parceiro. CloudTrail adiciona automaticamente os Conta da AWS IDs do parceiro à política de recursos quando você cria uma integração usando o CloudTrail console. Consulte a documentação do parceiro para saber como obter os Conta da AWS números necessários para a política.

  • Para uma integração de soluções, você deve especificar pelo menos uma Conta da AWS ID como principal e, opcionalmente, inserir uma ID externa para evitar confusões no delegado.

A seguir estão os requisitos para a política baseada em recursos:

  • Cada uma deve incluir pelo menos uma instrução. A política pode ter um máximo de 20 instruções.

  • Cada instrução contém pelo menos uma entidade principal. Uma entidade principal pode ser uma conta, um usuário, um perfil ou um usuário federado. Uma instrução pode ter um máximo de 50 entidades principais.

  • O ARN do recurso definido na política deve corresponder ao ARN do canal ao qual a política está anexada.

  • A política contém apenas uma ação: cloudtrail-data:PutAuditEvents

O proprietário do canal pode chamar a API PutAuditEvents no canal, a menos que a política negue ao proprietário o acesso ao recurso.

Exemplo: fornecer acesso ao canal às entidades principais

O exemplo a seguir concede permissões aos diretores com os ARNs arn:aws:iam::111122223333:root e arn:aws:iam::123456789012:root para chamar a PutAuditEvents API no CloudTrail canal com o ARN. arn:aws:iam::444455556666:root arn:aws:cloudtrail:us-east-1:777788889999:channel/EXAMPLE-80b5-40a7-ae65-6e099392355b

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ChannelPolicy", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root", "arn:aws:iam::444455556666:root", "arn:aws:iam::123456789012:root" ] }, "Action": "cloudtrail-data:PutAuditEvents", "Resource": "arn:aws:cloudtrail:us-east-1:777788889999:channel/EXAMPLE-80b5-40a7-ae65-6e099392355b" } ] }

Exemplo: uso de um ID externo para evitar o “confused deputy”

O exemplo a seguir usa um ID externo para endereçar e evitar um confused deputy. O problema "confused deputy" é um problema de segurança em que uma entidade que não tem permissão para executar uma ação pode coagir uma entidade mais privilegiada a executar a ação.

O parceiro de integração cria o ID externo para usar na política. Em seguida, ele fornece o ID externo a você como parte da criação da integração. O valor pode ser qualquer string exclusiva, como uma frase secreta ou o número de uma conta.

O exemplo concede permissões aos diretores com os ARNs arn:aws:iam::111122223333:rootarn:aws:iam::444455556666:root, e arn:aws:iam::123456789012:root para chamar a PutAuditEvents API no recurso do CloudTrail canal se a chamada para a PutAuditEvents API incluir o valor do ID externo definido na política.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ChannelPolicy", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root", "arn:aws:iam::444455556666:root", "arn:aws:iam::123456789012:root" ] }, "Action": "cloudtrail-data:PutAuditEvents", "Resource": "arn:aws:cloudtrail:us-east-1:777788889999:channel/EXAMPLE-80b5-40a7-ae65-6e099392355b" } ] }

Resource-based exemplos de políticas para armazenamentos de dados de eventos

Resource-based as políticas permitem que você controle quais diretores podem realizar ações em seu armazenamento de dados de eventos.

Você pode usar políticas baseadas em recursos para fornecer acesso entre contas para permitir que entidades principais selecionadas consultem o datastore de eventos, listem e cancelem consultas e visualizem resultados de consultas.

Para o painel do CloudTrail Lake, as políticas baseadas em recursos são usadas CloudTrail para permitir a execução de consultas em seus armazenamentos de dados de eventos para preencher os dados dos widgets do painel quando o painel é atualizado. CloudTrail O Lake oferece a opção de anexar uma política padrão baseada em recursos aos seus armazenamentos de dados de eventos ao criar um painel personalizado ou ativar o painel Destaques no CloudTrail console.

As seguintes ações são compatíveis com políticas baseadas em recursos para datastores de eventos:

  • cloudtrail:StartQuery

  • cloudtrail:CancelQuery

  • cloudtrail:ListQueries

  • cloudtrail:DescribeQuery

  • cloudtrail:GetQueryResults

  • cloudtrail:GenerateQuery

  • cloudtrail:GenerateQueryResultsSummary

  • cloudtrail:GetEventDataStore

Ao criar ou atualizar um armazenamento de dados de eventos ou gerenciar painéis no CloudTrail console, você tem a opção de adicionar uma política baseada em recursos ao seu armazenamento de dados de eventos. Você também pode executar o comando put-resource-policy para anexar uma política baseada em recurso a um datastore de eventos.

Uma política baseada em recurso consiste em uma ou mais instruções. Por exemplo, ela pode incluir uma declaração que permite CloudTrail consultar o armazenamento de dados do evento para um painel e outra declaração que permite o acesso entre contas para consultar o armazenamento de dados do evento. Você pode atualizar a política baseada em recursos de um armazenamento de dados de eventos existente na página de detalhes do armazenamento de dados de eventos no CloudTrail console.

Para armazenamentos de dados de eventos da organização, CloudTrail cria uma política padrão baseada em recursos que lista as ações que as contas de administrador delegado podem realizar nos armazenamentos de dados de eventos da organização. As permissões dessa política são derivadas das permissões de administrador delegado no AWS Organizations. Essa política é atualizada automaticamente após alterações no armazenamento de dados de eventos da organização ou na organização (por exemplo, uma conta de administrador CloudTrail delegado é registrada ou removida).

Exemplo: Permitir CloudTrail a execução de consultas para atualizar um painel

Para preencher os dados em um painel do CloudTrail Lake durante uma atualização, você precisa permitir CloudTrail a execução de consultas em seu nome. Para fazer isso, anexe uma política baseada em recursos a cada armazenamento de dados de eventos associado a um widget de painel que inclua uma declaração que permite realizar CloudTrail a StartQuery operação para preencher os dados do widget.

Estes são os requisitos para a instrução:

  • A única Principal é cloudtrail.amazonaws.com.

  • A única Action permitida é cloudtrail:StartQuery.

  • Isso inclui Condition apenas o (s) ARN (s) e o Conta da AWS ID do painel. Em AWS:SourceArn, você pode fornecer vários ARNs de painéis.

O exemplo de política a seguir inclui uma declaração que permite CloudTrail executar consultas em um armazenamento de dados de eventos para dois painéis personalizados chamados example-dashboard1 e example-dashboard2 e o painel de destaques com o nome AWSCloudTrail-Highlights da conta. 123456789012

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "cloudtrail.amazonaws.com" }, "Action": [ "cloudtrail:StartQuery" ], "Resource": "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/*", "Condition": { "StringLike": { "AWS:SourceArn": [ "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/example-dashboard1", "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/example-dashboard2", "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/AWSCloudTrail-Highlights" ], "AWS:SourceAccount": "123456789012" } } } ] }

Exemplo: permitir que outras contas consultem um datastore de eventos e visualizem resultados de consultas

Você pode usar políticas baseadas em recursos para fornecer acesso entre contas aos datastores de eventos para permitir que outras contas executem consultas nos seus datastores de eventos.

O exemplo de política a seguir inclui uma instrução que permite que usuários-raiz nas contas 111122223333, 777777777777, 999999999999 e 111111111111 executem consultas e obtenham resultados de consultas no datastore de eventos de propriedade do ID de conta 555555555555.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "policy1", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root", "arn:aws:iam::777777777777:root", "arn:aws:iam::999999999999:root", "arn:aws:iam::111111111111:root" ] }, "Action": [ "cloudtrail:StartQuery", "cloudtrail:GetEventDataStore", "cloudtrail:GetQueryResults" ], "Resource": "arn:aws:cloudtrail:us-east-1:555555555555:eventdatastore/example80-699f-4045-a7d2-730dbf313ccf" } ] }

Resource-based exemplo de política para um painel

Você pode definir um cronograma de atualização para um painel do CloudTrail Lake, o que CloudTrail permite atualizar o painel em seu nome no intervalo definido ao definir o cronograma de atualização. Para fazer isso, você precisa anexar uma política baseada em recursos ao painel para permitir CloudTrail a execução da StartDashboardRefresh operação em seu painel.

A seguir estão os requisitos para a política baseada em recursos:

  • A única Principal é cloudtrail.amazonaws.com.

  • A única Action permitida na política é cloudtrail:StartDashboardRefresh.

  • Isso inclui Condition apenas o ARN e o Conta da AWS ID do painel.

O exemplo de política a seguir CloudTrail permite atualizar um painel com o nome exampleDash da conta123456789012.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "cloudtrail.amazonaws.com" }, "Action": [ "cloudtrail:StartDashboardRefresh" ], "Resource": "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/*", "Condition": { "StringEquals": { "AWS:SourceArn": "arn:aws:cloudtrail:us-east-1:123456789012:dashboard/exampleDash", "AWS:SourceAccount":"123456789012" } } } ] }