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

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 listarAWS Data Exchangerecursos, você precisa de permissões para executar a operação e acessar os recursos correspondentes. Para executar a operação de forma programática, você também precisa de chaves de acesso válidas.

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

Cada recurso da AWS é de propriedade de uma 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 aAWS Identity and Access ManagementIdentidades (IAM) (ou seja, usuários, grupos e funções). 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 no Guia do usuário do IAM.

Ao conceder permissões, você decide quem recebe as permissões, os recursos relacionados às permissões concedidas e as ações específicas que deseja permitir nesses recursos.

Recursos e operações do AWS Data Exchange

EmAWS Data Exchange, existem dois tipos diferentes de recursos primários com diferentes planos de controle:

  • Os principais recursos paraAWS Data Exchangeestáconjuntos de dadoseempregos.AWS Data Exchangetambém suportarevisõesebens.

  • Para facilitar as transações entre provedores e assinantes,AWS Data Exchangetambém usaAWS Marketplaceconceitos e recursos, incluindo produtos, ofertas e assinaturas. Você pode usar oAWS MarketplaceAPI de catálogo ou oAWS Data Exchangeconsole para gerenciar seus produtos, ofertas, solicitações de assinatura e assinaturas.

Informações sobre propriedade de recursos

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

Propriedade do recurso

Qualquer entidade do IAM em umConta da AWScom as permissões corretas pode criarAWS Data Exchangeconjuntos de dados. Quando uma entidade do IAM cria um conjunto de dados, suaConta da AWSé o proprietário do conjunto de dados. Os produtos de dados publicados podem conter conjuntos de dados que pertencem somente àConta da AWSque os criou.

Para assinar umAWS Data Exchangeproduto, a entidade IAM precisa de permissões para usarAWS Data Exchange, além doaws-marketplace:subscribePermissão do IAM para oAWS Marketplace(supondo que eles 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 é proprietária dos conjuntos de dados autorizados. Todos os conjuntos de dados autorizados que são exportados para o Amazon S3 são de propriedade do assinanteConta da AWS.

Gerenciamento de acesso aos recursos

Esta seção discute o uso do IAM no contexto do 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 é IAM? no Guia do usuário do IAM. Para obter mais informações sobre a sintaxe e as descrições de políticas do IAM, consulteReferência da política do AWS IAMnaManual 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 baseadasem identidade (políticas do IAM). As políticas anexadas a um recurso são chamadas debaseado em recursopolíticas.AWS Data Exchangeoferece suporte apenas a políticas baseadas em identidade (políticas do IAM).

Políticas baseadas em identidade (políticas do IAM)

Você pode anexar políticas a identidades do IAM. Por exemplo, você pode fazer o seguinte:

  • Anexar uma política de permissões a um grupo ou um grupo em sua conta— Conceder a um usuário permissões para criar umAWS Data Exchangerecurso, como uma revisão, você pode associar uma política de permissões a um usuário ou um grupo a que o usuário pertence.

  • Anexar uma política de permissões a uma função (grant cross-account permissions): você pode anexar uma política de permissões baseada em identidade a uma função do IAM para conceder permissões entre contas. Por exemplo, o administrador na conta A pode criar uma função para conceder permissões entre contas a outra.Conta da AWS(por exemplo, Conta B) ou umAWS service (Serviço da AWS)como segue:

    1. Um administrador da Conta A cria uma função do IAM e anexa uma política de permissões à função que concede permissões em recursos da Conta A.

    2. Um administrador da Conta A anexa uma política de confiança à função identificando a Conta B como a entidade principal, que pode assumir a função.

    3. O administrador da Conta B pode delegar permissões para assumir a função a todos os usuários na Conta B. Isso permite que os usuários na Conta B criem ou acessem recursos na Conta A. A entidade principal na política de confiança também pode ser umAWS service (Serviço da AWS)diretor, se você quiser conceder umAWS service (Serviço da AWS)permissões para assumir a função.

    Para obter mais informações sobre o uso do IAM para delegar permissões, consulte Gerenciamento de acesso no Guia do usuário do IAM.

AWS Data Exchangefornece quatro políticas gerenciadas:

  • AWSDataExchangeFullAccess

  • AWSDataExchangeSubscriberFullAccess

  • AWSDataExchangeProviderFullAccess

  • AWSDataExchangeReadOnly

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

Permissões do Amazon S3

Ao importar ativos do Amazon S3 para oAWS Data Exchange, você precisa de permissões para gravar noAWS Data ExchangeBuckets do S3 de serviço. Da mesma forma, ao exportar ativos deAWS Data Exchangepara o Amazon S3, você precisa de permissões para ler doAWS Data ExchangeBuckets do S3 de serviço. Essas permissões estão incluídas nas políticas mencionadas anteriormente, mas você também pode criar sua 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êmaws-data-exchangeem seu nome e use o CalledViapermissão para restringir o uso da permissão às solicitações feitas porAWS Data Exchangeem nome do diretor.

Por exemplo, é possível criar uma política para permitir a importação e a exportação paraAWS Data ExchangeIsso inclui 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 comAWS Data Exchange. A política inclui as a seguir a seguir a seguir a seguir a a seguir

  • s3:PutObjectes3:PutObjectAcl— Essas permissões são restritas somente aos buckets do S3 que contêmaws-data-exchangeem seu nome. Essas permissões permitem que os provedores escrevam paraAWS Data Exchangebuckets de serviço ao importar do Amazon S3.

  • s3:GetObject— Essa permissão é restrita aos buckets do S3 que contêmaws-data-exchangeem seu nome. Essa permissão permite que os clientes leiamAWS Data Exchangebaldes de serviço ao exportar deAWS Data Exchangeao Amazon S3.

  • Essas permissões são restritas às solicitações feitas usandoAWS Data Exchangecom o IAMCalledViaCondicional. Isso permite que o S3PutObjectpermissões a serem usadas somente no contexto doAWS Data Exchangeconsole do ou API do.

nota

Seus usuários também podem precisar de permissões adicionais para ler ou gravar a partir de seus próprios buckets e objetos 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

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

Outros serviços, como o Amazon S3, são compatíveis com 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.

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

Para usarAWS Data Exchange, você deve ser um usuário do IAM com as permissões apropriadas 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 Amazon Resource Name (ARN – Nome de recurso da Amazon) para identificar o recurso a que a política se aplica. TudoAWS Data ExchangeAs operações de API suportam permissões em nível de recurso (RLP), masAWS MarketplaceAs ações não são compatíveis com RLP. Para obter mais informações, consulteRecursos e operações do AWS Data Exchange

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

  • Efeito— Especifique 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.

  • Principal: em políticas baseadas em identidade (políticas do IAM), o usuário ao qual a política é anexada é implicitamente a entidade principal. Para as políticas baseadas em recursos, você especifica quais usuários, contas, serviços ou outras entidades deseja que recebam permissões (aplica-se somente a políticas baseadas em recursos). O AWS Data Exchange não oferece suporte para politicas baseadas em recurso.

Para obter mais informações sobre a sintaxe e e as descrições da política do IAM, consulteReferência da política do AWS IAMnaManual 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. comAWS Data Exchange, oCreateJob,StartJob,GetJob, eCancelJobAs operações da API oferecem suporte a permissões condicionais. Você pode fornecer permissões noJobTypeNível.

AWS Data Exchangereferência de chave de condição
Chave de condição Descrição Type
"dataexchange:JobType":"IMPORT_ASSETS_FROM_S3" Escopo de permissões para trabalhos que importam ativos do Amazon S3. String
"dataexchange:JobType":"IMPORT_ASSET_FROM_SIGNED_URL" Define o escopo das permissões para trabalhos que importam ativos de um URL assinado. String
"dataexchange:JobType":"IMPORT_ASSET_FROM_REDSHIFT_DATA_SHARES" Escopo de permissões para trabalhos que importam ativos do Amazon Redshift. String
"dataexchange:JobType":"IMPORT_ASSET_FROM_API_GATEWAY_API" Escopo de permissões para trabalhos que importam ativos do Amazon API Gateway. String
"dataexchange:JobType":"EXPORT_ASSETS_TO_S3" Escopa permissões para tarefas que exportam ativos para o Amazon S3. String
"dataexchange:JobType":"EXPORT_ASSETS_TO_SIGNED_URL" Define o escopo das permissões para trabalhos que exportam ativos para um URL assinado. String
"dataexchange:JobType":EXPORT_REVISIONS_TO_S3" Escopa as permissões para tarefas 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 Condição no Guia do usuário do IAM.

Para expressar condições, você usa chaves de condição predefinidas.AWS Data Exchangetem oJobTypecondição para as operações da API. No entanto, existemAWSchaves de condição em toda a que você pode usar, conforme apropriado. Para obter uma lista completa deAWSteclas largas, veja oManual do usuário do IAM.