Controle de acesso - AWS Data Exchange Guia do usuário

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

Controle de acesso

Para criar, atualizar, excluir ou listar AWS Data Exchange recursos, você precisa de permissões para realizar a operação e acessar os recursos correspondentes. Para executar a operação programaticamente, você também precisa de chaves de acesso válidas.

Visão geral do gerenciamento de permissões de acesso aos seus AWS Data Exchange recursos

Cada AWS recurso é de propriedade de um Conta da AWS, e as permissões para criar ou acessar um recurso são regidas por políticas de permissões. Um administrador de conta pode anexar políticas de permissões a usuários, grupos e perfis. Alguns serviços (como o AWS Lambda) também oferecem suporte à anexação de políticas de permissões aos recursos.

nota

Um administrador da conta (ou administrador) é um usuário com privilégios de administrador. Para obter mais informações, consulte Melhores práticas do IAM.

Para conceder acesso, adicione as permissões aos seus usuários, grupos ou perfis:

AWS Data Exchange recursos e operações

Em AWS Data Exchange, há dois tipos diferentes de recursos primários com planos de controle diferentes:

  • Os principais recursos para AWS Data Exchange são conjuntos de dados e trabalhos. AWS Data Exchange também suporta revisões e ativos.

  • Para facilitar as transações entre provedores e assinantes, AWS Data Exchange também usa AWS Marketplace conceitos e recursos, incluindo produtos, ofertas e assinaturas. Você pode usar a API do AWS Marketplace Catálogo ou o AWS Data Exchange console para gerenciar seus produtos, ofertas, solicitações de assinatura e assinaturas.

Informações sobre propriedade de recursos

Ele Conta da AWS possui os recursos que são criados na conta, independentemente de quem criou os recursos. Especificamente, o proprietário Conta da AWS do recurso é a entidade principal (ou seja, o usuário Conta da AWS raiz, um usuário ou uma função) que autentica a solicitação de criação do recurso. Os exemplos a seguir ilustram como isso funciona.

Propriedade de recursos

Qualquer entidade do IAM em um Conta da AWS com as permissões corretas pode criar conjuntos AWS Data Exchange de dados. Quando uma entidade do IAM cria um conjunto de dados, sua Conta da AWS tem o conjunto de dados. Os produtos de dados publicados podem conter conjuntos de dados pertencentes somente à Conta da AWS pessoa que os criou.

Para assinar um AWS Data Exchange produto, a entidade do IAM precisa de permissões para usar AWS Data Exchange, além das permissões aws-marketplace:subscribeaws-marketplace:aws-marketplace:CreateAgreementRequest, e do aws-marketplace:AcceptAgreementRequest IAM AWS Marketplace (supondo que elas passem por qualquer verificação de assinatura relacionada). Como assinante, sua conta tem acesso de leitura aos conjuntos de dados autorizados; no entanto, ela não tem os conjuntos de dados autorizados. Todos os conjuntos de dados autorizados que são exportados para o Amazon S3 são de propriedade da Conta da AWS do assinante.

Gerenciamento de acesso aos recursos

Esta seção discute o uso do IAM no contexto de AWS Data Exchange. Não são fornecidas informações detalhadas sobre o serviço IAM. Para obter a documentação completa do IAM, consulte O que é o IAM? no Guia do usuário do IAM. Para obter informações sobre a sintaxe e as descrições da política do IAM, consulte Referência de política do IAM da AWS no Guia do usuário do IAM.

A política de permissões descreve quem tem acesso a quê. A seção a seguir explica as opções para criar políticas de permissões.

As políticas anexadas a uma identidade do IAM são conhecidas como políticas baseadas em identidade (políticas do IAM). As políticas anexadas a um recurso são chamadas de políticas baseadas em recursos. AWS Data Exchange suporta somente políticas baseadas em identidade (políticas do IAM).

Políticas e permissões baseadas em identidade

AWS Data Exchange fornece quatro políticas gerenciadas:

  • AWSDataExchangeFullAccess

  • AWSDataExchangeSubscriberFullAccess

  • AWSDataExchangeProviderFullAccess

  • AWSDataExchangeReadOnly

Para obter mais informações sobre essas políticas e suas permissões, consulte AWS políticas gerenciadas para AWS Data Exchange.

Permissões do Amazon S3

Ao importar ativos do Amazon S3 AWS Data Exchange para, você precisa de permissões para gravar nos buckets AWS Data Exchange do serviço S3. Da mesma forma, ao exportar ativos AWS Data Exchange para o Amazon S3, você precisa de permissões para ler os buckets AWS Data Exchange do serviço S3. Essas permissões estão incluídas nas políticas mencionadas anteriormente, mas você também pode criar a própria política para permitir exatamente o que deseja que seus usuários possam fazer. Você pode definir o escopo dessas permissões para buckets que contêm aws-data-exchange seus nomes e usar a CalledViapermissão para restringir o uso da permissão às solicitações feitas AWS Data Exchange em nome do diretor.

Por exemplo, você pode criar uma política para permitir a importação e exportação AWS Data Exchange que inclua essas permissões.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::*aws-data-exchange*", "Condition": { "ForAnyValue:StringEquals": { "aws:CalledVia":[ "dataexchange.amazonaws.com" ] } } }, { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:PutObjectAcl" ], "Resource": "arn:aws:s3:::*aws-data-exchange*", "Condition": { "ForAnyValue:StringEquals": { "aws:CalledVia":[ "dataexchange.amazonaws.com" ] } } }, ] }

Essas permissões permitem que os provedores importem e exportem com AWS Data Exchange. A política inclui as seguintes permissões e restrições:

  • s3: PutObject e s3: PutObjectAcl — Essas permissões são restritas somente aos buckets do S3 que contêm aws-data-exchange seus nomes. Essas permissões permitem que os provedores gravem em buckets AWS Data Exchange de serviço ao importar do Amazon S3.

  • s3: GetObject — Essa permissão é restrita aos buckets do S3 que contêm aws-data-exchange seus nomes. Essa permissão permite que os clientes leiam os buckets de AWS Data Exchange serviço ao exportar AWS Data Exchange para o Amazon S3.

  • Essas permissões são restritas a solicitações feitas usando o AWS Data Exchange com a condição CalledVia do IAM. Isso permite que as PutObject permissões do S3 sejam usadas somente no contexto do AWS Data Exchange console ou da API.

  • AWS Lake Formatione AWS Resource Access Manager(AWS RAM) Para usar conjuntos de AWS Lake Formation dados, você precisará aceitar o convite de AWS RAM compartilhamento para cada novo provedor líquido com o qual você tenha uma assinatura. Para aceitar o convite de AWS RAM compartilhamento, você precisará assumir uma função que tenha permissão para aceitar um convite de AWS RAM compartilhamento. Para saber mais sobre como AWS gerenciar as políticas AWS RAM, consulte Políticas gerenciadas para AWS RAM.

  • Para criar conjuntos de AWS Lake Formation dados, você precisará criar o conjunto de dados com uma função assumida que permita ao IAM transmitir uma função para AWS Data Exchange. Isso permitirá AWS Data Exchange conceder e revogar permissões aos recursos do Lake Formation em seu nome. Veja um exemplo de política abaixo:

    { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "dataexchange.amazonaws.com" } } }
nota

Seus usuários também podem precisar de permissões adicionais para ler ou gravar em seus próprios objetos e buckets do S3 que não são abordados neste exemplo.

Para obter mais informações sobre usuários, grupos, funções e permissões, consulte Identidades (usuários, grupos e funções) no Guia do usuário do IAM.

Políticas baseadas em recursos

AWS Data Exchange não oferece suporte a políticas baseadas em recursos.

Outros serviços, como o Amazon S3, oferecem suporte a políticas de permissões baseadas em recursos. Por exemplo: você pode anexar uma política a um bucket do S3 para gerenciar permissões de acesso a esse bucket.

Especificando elementos de política: ações, efeitos e entidades principais

Para usar AWS Data Exchange, suas permissões de usuário devem ser definidas em uma política do IAM.

Estes são os elementos de política mais básicos:

  • Recurso: em uma política, você usa um nome do recurso da Amazon (ARN) para identificar o recurso a que a política se aplica. Todas as operações de AWS Data Exchange API oferecem suporte a permissões em nível de recurso (RLP), mas AWS Marketplace as ações não oferecem suporte a RLP. Para ter mais informações, consulte AWS Data Exchange recursos e operações.

  • Ação: você usa palavras-chave de ação para identificar operações de recursos que deseja permitir ou negar.

  • Efeito — Você especifica o efeito (permitir ou negar) quando o usuário solicita a ação específica. Se você não conceder (permitir) explicitamente acesso a um recurso, o acesso estará implicitamente negado. Você também pode negar explicitamente o acesso a um recurso, para ter certeza de que um usuário não consiga acessá-lo, mesmo que uma política diferente conceda acesso.

  • Entidade principal: em políticas baseadas em identidade (políticas do IAM), o usuário ao qual a política é anexada é a entidade principal implícita. Para políticas baseadas em recursos, você especifica o usuário, a conta, o serviço ou outra entidade que deseja receber permissões (aplica-se somente às políticas baseadas em recursos). AWS Data Exchange não oferece suporte a políticas baseadas em recursos.

Para obter mais informações sobre a sintaxe e as descrições da política do IAM, consulte Referência de política do IAM da AWS no Guia do usuário do IAM.

Especificar condições em uma política

Ao conceder permissões, você pode usar a linguagem da política do IAM para especificar as condições de quando uma política deverá entrar em vigor. Com AWS Data Exchange, as operaçõesCreateJob,StartJob,GetJob, e CancelJob API oferecem suporte a permissões condicionais. Você pode fornecer permissões no nível JobType.

AWS Data Exchange referência da chave de condição
Chave de condição Descrição Tipo
"dataexchange:JobType":"IMPORT_ASSETS_FROM_S3" Define permissões para trabalhos que importam ativos do Amazon S3. String
"dataexchange:JobType":IMPORT_ASSETS_FROM_LAKE_FORMATION_TAG_POLICY" (Preview) Define permissões para trabalhos que importam ativos do AWS Lake Formation (Visualização) String
"dataexchange:JobType":"IMPORT_ASSET_FROM_SIGNED_URL" Define permissões para trabalhos que importam ativos de um URL assinado. String
"dataexchange:JobType":"IMPORT_ASSET_FROM_REDSHIFT_DATA_SHARES" Define permissões para trabalhos que importam ativos do Amazon Redshift. String
"dataexchange:JobType":"IMPORT_ASSET_FROM_API_GATEWAY_API" Define permissões para trabalhos que importam ativos do Amazon API Gateway. String
"dataexchange:JobType":"EXPORT_ASSETS_TO_S3" Define permissões para trabalhos que exportam ativos para o Amazon S3. String
"dataexchange:JobType":"EXPORT_ASSETS_TO_SIGNED_URL" Define permissões para trabalhos que exportam ativos para um URL assinado. String
"dataexchange:JobType":EXPORT_REVISIONS_TO_S3" Define permissões para trabalhos que exportam revisões para o Amazon S3. String

Para obter mais informações sobre como especificar condições em uma linguagem de política, consulte Condition no Guia do usuário do IAM.

Para expressar condições, você usa chaves de condição predefinidas. AWS Data Exchange tem a JobType condição para operações de API. No entanto, existem chaves de condição em toda a AWS que você pode usar, conforme apropriado. Para obter uma lista completa de chaves em toda a AWS , consulte o Guia do usuário do IAM.