Contrôle d’accès - AWS Data Exchange Guide de l'utilisateur

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Contrôle d’accès

Pour créer, mettre à jour, supprimer ou répertorier des AWS Data Exchange ressources, vous devez disposer d'autorisations pour effectuer l'opération et accéder aux ressources correspondantes. Pour effectuer l'opération par programmation, vous avez également besoin de clés d'accès valides.

Vue d'ensemble de la gestion des autorisations d'accès à vos AWS Data Exchange ressources

Chaque AWS ressource appartient à un Compte AWS, et les autorisations de création ou d'accès à une ressource sont régies par des politiques d'autorisation. Un administrateur de compte peut associer des politiques d'autorisation aux utilisateurs, aux groupes et aux rôles. Certains services (comme AWS Lambda) prennent également en charge l'attachement de stratégies d'autorisation aux ressources.

Note

Un administrateur de compte (ou utilisateur administrateur) est un utilisateur doté des privilèges d'administrateur. Pour plus d'informations, consultez la section IAMMeilleures pratiques.

Pour activer l’accès, ajoutez des autorisations à vos utilisateurs, groupes ou rôles :

AWS Data Exchange ressources et opérations

Dans AWS Data Exchange, il existe deux types de ressources principales avec des plans de contrôle différents :

  • Les principales ressources pour AWS Data Exchange sont les ensembles de données et les tâches. AWS Data Exchange prend également en charge les révisions et les actifs.

  • Pour faciliter les transactions entre fournisseurs et abonnés, utilise AWS Data Exchange également des AWS Marketplace concepts et des ressources, notamment des produits, des offres et des abonnements. Vous pouvez utiliser le AWS Marketplace catalogue API ou la AWS Data Exchange console pour gérer vos produits, vos offres, vos demandes d'abonnement et vos abonnements.

Présentation de la propriété des ressources

Il Compte AWS est propriétaire des ressources créées dans le compte, quelle que soit la personne qui les a créées. Plus précisément, le propriétaire Compte AWS de la ressource est l'entité principale (c'est-à-dire l'utilisateur Compte AWS root, un utilisateur ou un rôle) qui authentifie la demande de création de ressource. Les exemples suivants illustrent comment cela fonctionne.

Propriété des ressources

Toute IAM entité disposant Compte AWS des autorisations appropriées peut créer des ensembles AWS Data Exchange de données. Lorsqu'une IAM entité crée un ensemble de données, Compte AWS elle en est propriétaire. Les produits de données publiés peuvent contenir des ensembles de données appartenant uniquement à Compte AWS celui qui les a créés.

Pour s'abonner à un AWS Data Exchange produit, l'IAMentité a besoin d'autorisations d'utilisation AWS Data Exchange, en plus de aws-marketplace:subscribeaws-marketplace:aws-marketplace:CreateAgreementRequest, et d'aws-marketplace:AcceptAgreementRequestIAMautorisations pour AWS Marketplace (en supposant qu'elle passe avec succès toutes les vérifications d'abonnement associées). En tant qu'abonné, votre compte dispose d'un accès en lecture aux ensembles de données autorisés ; toutefois, il ne possède pas les ensembles de données autorisés. Tous les ensembles de données autorisés exportés vers Amazon S3 appartiennent à l'abonné Compte AWS.

Gestion de l’accès aux ressources

Cette section traite de l'utilisation IAM dans le contexte de AWS Data Exchange. Il ne fournit pas d'informations détaillées sur le IAM service. Pour une IAM documentation complète, voir Qu'est-ce que c'est IAM ? dans le guide de IAM l'utilisateur. Pour plus d'informations sur la syntaxe et les descriptions des IAM politiques, reportez-vous à la section Référence des AWS IAM politiques dans le Guide de IAM l'utilisateur.

Une permissions policy (politique d'autorisation) décrit qui a accès à quoi. La section suivante explique les options disponibles pour créer des stratégies d'autorisation.

Les politiques associées à une IAM identité sont appelées politiques basées sur l'identité (IAMpolitiques). Les politiques associées à une ressource sont appelées politiques basées sur les ressources. AWS Data Exchange prend uniquement en charge les politiques basées sur l'identité (IAMpolitiques).

Politiques et autorisations basées sur l'identité

AWS Data Exchange fournit quatre politiques gérées :

  • AWSDataExchangeFullAccess

  • AWSDataExchangeSubscriberFullAccess

  • AWSDataExchangeProviderFullAccess

  • AWSDataExchangeReadOnly

Pour plus d'informations sur ces politiques et leurs autorisations, consultezAWS politiques gérées pour AWS Data Exchange.

Autorisations Amazon S3

Lorsque vous importez des actifs depuis Amazon S3 vers AWS Data Exchange, vous devez disposer d'autorisations pour écrire dans les compartiments S3 du AWS Data Exchange service. De même, lorsque vous exportez des actifs depuis AWS Data Exchange Amazon S3, vous devez disposer d'autorisations pour lire les buckets du AWS Data Exchange service S3. Ces autorisations sont incluses dans les politiques mentionnées précédemment, mais vous pouvez également créer votre propre politique pour autoriser exactement ce que vous souhaitez que vos utilisateurs puissent faire. Vous pouvez étendre ces autorisations aux compartiments dont le aws-data-exchange nom est indiqué et utiliser l' CalledViaautorisation pour restreindre l'utilisation de l'autorisation aux demandes effectuées AWS Data Exchange au nom du principal.

Par exemple, vous pouvez créer une politique autorisant l'importation et l'exportation vers AWS Data Exchange une politique incluant ces autorisations.

{ "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" ] } } }, ] }

Ces autorisations permettent aux fournisseurs d'importer et d'exporter avec AWS Data Exchange. La politique inclut les autorisations et restrictions suivantes :

  • s3 : PutObject et s3 : PutObjectAcl — Ces autorisations sont limitées uniquement aux compartiments S3 dont le nom aws-data-exchange est indiqué. Ces autorisations permettent aux fournisseurs d'écrire dans des compartiments AWS Data Exchange de services lorsqu'ils importent depuis Amazon S3.

  • s3 : GetObject — Cette autorisation est limitée aux compartiments S3 dont le nom aws-data-exchange est indiqué. Cette autorisation permet aux clients de lire des informations depuis des compartiments de AWS Data Exchange services lorsqu'ils exportent AWS Data Exchange vers Amazon S3.

  • Ces autorisations sont limitées aux demandes effectuées AWS Data Exchange en utilisant la IAM CalledVia condition. Cela permet aux PutObject autorisations S3 d'être utilisées uniquement dans le contexte de la AWS Data Exchange console ouAPI.

  • AWS Lake Formationet AWS Resource Access Manager(AWS RAM) Pour utiliser AWS Lake Formation les ensembles de données, vous devez accepter l'invitation de AWS RAM partage pour chaque nouveau fournisseur auprès duquel vous êtes abonné. Pour accepter l'invitation de AWS RAM partage, vous devez assumer un rôle autorisé à accepter une invitation de AWS RAM partage. Pour en savoir plus sur la façon dont les politiques AWS sont gérées pour AWS RAM, consultez la section Politiques gérées pour AWS RAM.

  • Pour créer AWS Lake Formation des ensembles de données, vous devez créer l'ensemble de données avec un rôle assumé qui permet IAM de transmettre un rôle à AWS Data Exchange. Cela permettra d' AWS Data Exchange accorder et de révoquer les autorisations relatives aux ressources de Lake Formation en votre nom. Consultez un exemple de politique ci-dessous :

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

Vos utilisateurs peuvent également avoir besoin d'autorisations supplémentaires pour lire ou écrire à partir de vos propres compartiments et objets S3 qui ne sont pas couverts dans cet exemple.

Pour plus d'informations sur les utilisateurs, les groupes, les rôles et les autorisations, consultez la section Identités (utilisateurs, groupes et rôles) dans le guide de IAM l'utilisateur.

Politiques basées sur les ressources

AWS Data Exchange ne prend pas en charge les politiques basées sur les ressources.

D'autres services, tels qu'Amazon S3, prennent en charge les politiques d'autorisation basées sur les ressources. Par exemple, vous pouvez attacher une politique à un compartiment S3 pour gérer les autorisations d’accès à ce compartiment.

Spécification des éléments d’une politique : actions, effets et principaux

Pour l'utiliser AWS Data Exchange, vos autorisations d'utilisateur doivent être définies dans une IAM politique.

Voici les éléments les plus élémentaires d'une politique :

  • Ressource : dans une politique, vous utilisez un nom de ressource Amazon (ARN) pour identifier la ressource à laquelle la politique s'applique. Toutes les AWS Data Exchange API opérations prennent en charge les autorisations au niveau des ressources (RLP), mais pas les AWS Marketplace actionsRLP. Pour plus d’informations, consultez AWS Data Exchange ressources et opérations.

  • Action : vous utilisez des mots clés d’action pour identifier les opérations de ressource que vous voulez accorder ou refuser.

  • Effet : vous spécifiez l'effet (autoriser ou refuser) lorsque l'utilisateur demande l'action spécifique. Si vous n’accordez pas explicitement l’accès pour (autoriser) une ressource, l’accès est implicitement refusé. Vous pouvez aussi explicitement refuser l’accès à une ressource, ce que vous pouvez faire afin de vous assurer qu’un utilisateur n’y a pas accès, même si une politique différente accorde l’accès.

  • Principal — Dans les politiques basées sur l'identité (IAMpolitiques), l'utilisateur auquel la politique est attachée est le principal implicite. Pour les politiques basées sur les ressources, vous spécifiez l'utilisateur, le compte, le service ou toute autre entité pour lequel vous souhaitez recevoir des autorisations (s'applique uniquement aux politiques basées sur les ressources). AWS Data Exchange ne prend pas en charge les politiques basées sur les ressources.

Pour plus d'informations sur la syntaxe et les descriptions des IAM politiques, consultez la section Référence des AWS IAM politiques dans le Guide de IAM l'utilisateur.

Spécification de conditions dans une politique

Lorsque vous accordez des autorisations, vous pouvez utiliser le langage de IAM politique pour spécifier les conditions dans lesquelles une politique doit entrer en vigueur. Les CancelJob API opérations Avec AWS Data Exchange, CreateJob StartJobGetJob, et prennent en charge les autorisations conditionnelles. Vous pouvez fournir des autorisations au JobType niveau.

AWS Data Exchange référence clé de condition
Clé de condition Description Type
"dataexchange:JobType":"IMPORT_ASSETS_FROM_S3" Étend les autorisations accordées aux tâches qui importent des actifs depuis Amazon S3. Chaîne
"dataexchange:JobType":IMPORT_ASSETS_FROM_LAKE_FORMATION_TAG_POLICY" (Preview) Étend les autorisations accordées aux tâches depuis lesquelles des actifs sont importés AWS Lake Formation (version préliminaire) Chaîne
"dataexchange:JobType":"IMPORT_ASSET_FROM_SIGNED_URL" Étend les autorisations accordées aux tâches qui importent des actifs à partir d'un document signéURL. Chaîne
"dataexchange:JobType":"IMPORT_ASSET_FROM_REDSHIFT_DATA_SHARES" Étend les autorisations accordées aux tâches qui importent des actifs depuis Amazon Redshift. Chaîne
"dataexchange:JobType":"IMPORT_ASSET_FROM_API_GATEWAY_API" Étend les autorisations accordées aux tâches qui importent des actifs depuis Amazon API Gateway. Chaîne
"dataexchange:JobType":"EXPORT_ASSETS_TO_S3" Étend les autorisations accordées aux tâches qui exportent des actifs vers Amazon S3. Chaîne
"dataexchange:JobType":"EXPORT_ASSETS_TO_SIGNED_URL" Étend les autorisations accordées aux tâches qui exportent des actifs vers un document signéURL. Chaîne
"dataexchange:JobType":EXPORT_REVISIONS_TO_S3" Étend les autorisations accordées aux tâches qui exportent des révisions vers Amazon S3. Chaîne

Pour plus d'informations sur la spécification de conditions dans un langage de politique, voir Condition dans le guide de IAM l'utilisateur.

Pour exprimer des conditions, vous utilisez des clés de condition prédéfinies. AWS Data Exchange a la JobType condition requise pour les API opérations. Cependant, il existe de AWS larges clés de condition que vous pouvez utiliser, le cas échéant. Pour obtenir la liste complète des touches AWS larges, consultez le guide de IAM l'utilisateur.