View a markdown version of this page

Création d'une subvention de données sur AWS Data Exchange contenant l'accès aux données Amazon S3 - 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.

Création d'une subvention de données sur AWS Data Exchange contenant l'accès aux données Amazon S3

Avec AWS Data Exchange pour Amazon S3, les propriétaires de données peuvent partager un accès direct aux compartiments Amazon S3 ou à des préfixes spécifiques et à des objets Amazon S3. Les propriétaires de données ont également l' AWS Data Exchange habitude de gérer automatiquement les droits par le biais d'autorisations de données.

En tant que propriétaire des données, vous pouvez partager un accès direct à l'intégralité d'un compartiment Amazon S3 ou à des préfixes spécifiques et à des objets Amazon S3 sans créer ni gérer de copies. Ces objets Amazon S3 partagés peuvent être chiffrés côté serveur avec des clés gérées par le client stockées dans AWS Key Management Service (AWS KMS) ou avec Clés gérées par AWS (SSE-S3). Pour plus d'informations sur la surveillance de vos clés KMS et la compréhension des contextes de chiffrement, consultezGestion des clés pour l'accès aux données Amazon S3. Lorsqu'un destinataire accède à vos produits de données, provisionne AWS Data Exchange automatiquement un point d'accès Amazon S3 et met à jour ses politiques en matière de ressources en votre nom afin d'accorder aux destinataires un accès en lecture seule. Les destinataires peuvent utiliser les alias des points d'accès Amazon S3 là où ils utilisent les noms de compartiment Amazon S3 pour accéder aux données d'Amazon S3.

À la fin de l'abonnement, les autorisations du destinataire sont révoquées.

Avant de pouvoir créer une autorisation de données contenant l'accès aux données Amazon S3, vous devez remplir les conditions préalables suivantes :

Conditions préalables
  • Vérifiez que les compartiments Amazon S3 hébergeant les données sont configurés avec le paramètre imposé par le propriétaire du compartiment Amazon S3 activé sur ACL Disabled. Pour plus d'informations, consultez la section Contrôle de la propriété des objets et désactivation des ACL pour votre compartiment dans le guide de l'utilisateur d'Amazon Simple Storage Service.

  • Vos objets partagés doivent appartenir à la classe Amazon S3 Standard Storage, ou être gérés à l'aide d'Amazon S3 Intelligent Tiering, pour que les destinataires puissent y accéder correctement. S'ils appartiennent à d'autres classes de stockage, ou si vous avez activé la hiérarchisation intelligente avec Deep Archive, vos destinataires recevront des erreurs car ils n'y sont pas autorisés. RestoreObject

  • Vérifiez que le chiffrement des compartiments Amazon S3 hébergeant les données est désactivé ou chiffré avec les clés gérées Amazon S3 (SSE-S3) ou les clés gérées par le client stockées dans AWS Key Management Service (AWS KMS).

  • Si vous utilisez des clés gérées par le client, vous devez disposer des éléments suivants :

    1. Autorisations IAM kms:CreateGrant sur les clés KMS. Vous pouvez accéder à ces autorisations via la politique de clé, les informations d'identification IAM ou via une AWS KMS autorisation sur la clé KMS. Pour plus d'informations sur la gestion des clés et pour comprendre comment AWS Data Exchange les subventions AWS KMS sont utilisées, consultezCréation AWS KMS bourses.

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

      Les utilisateurs ont besoin d'un accès programmatique s'ils souhaitent interagir avec des AWS personnes extérieures au Console de gestion AWS. La manière d'accorder l'accès par programmation dépend du type d'utilisateur qui accède AWS.

      Pour accorder aux utilisateurs un accès programmatique, choisissez l’une des options suivantes.

      Quel utilisateur a besoin d’un accès programmatique ? À Méthode
      IAM (Recommandé) Utilisez les informations d'identification de la console comme informations d'identification temporaires pour signer les AWS CLI demandes programmatiques adressées aux AWS SDK ou AWS aux API.

      Suivez les instructions de l’interface que vous souhaitez utiliser.

      Identité de la main-d’œuvre

      (Utilisateurs gérés dans IAM Identity Center)

      Utilisez des informations d'identification temporaires pour signer les demandes programmatiques adressées aux AWS CLI AWS SDK ou AWS aux API.

      Suivez les instructions de l’interface que vous souhaitez utiliser.

      IAM Utilisez des informations d'identification temporaires pour signer les demandes programmatiques adressées aux AWS CLI AWS SDK ou AWS aux API. Suivez les instructions de la section Utilisation des informations d'identification temporaires avec AWS les ressources du Guide de l'utilisateur IAM.
      IAM

      (Non recommandé)

      Utilisez des informations d'identification à long terme pour signer des demandes programmatiques adressées aux AWS CLI AWS SDK ou AWS aux API.

      Suivez les instructions de l’interface que vous souhaitez utiliser.

      Voici un exemple de politique JSON qui montre comment vous pouvez ajouter à la politique de clé de la clé KMS.

      { "Sid": "AllowCreateGrantPermission", "Effect": "Allow", "Principal": { "AWS": "<IAM identity who will call Dataexchange API>" }, "Action": "kms:CreateGrant", "Resource": "*" }

      La politique suivante présente un exemple d'ajout de stratégie pour l'identité IAM utilisée.

      JSON
      { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "AllowCreateGrantPermission", "Action": [ "kms:CreateGrant" ], "Resource": [ "arn:aws:kms:us-east-1:111122223333:key/KeyId" ] } ] }
      Note

      Les clés KMS inter-comptes sont également autorisées si l'kms:CreateGrantautorisation relative aux clés KMS est obtenue à l'étape précédente. Si la clé appartient à un autre compte, vous devez disposer des autorisations relatives à la politique relative aux clés et à vos informations d'identification IAM, comme indiqué dans les exemples ci-dessus.

    2. Assurez-vous d'utiliser des clés KMS pour chiffrer les objets existants et nouveaux dans le compartiment Amazon S3 à l'aide de la fonctionnalité de clé de compartiment Amazon S3. Pour plus de détails, consultez la section Configuration des clés de compartiment S3 dans le guide de l'utilisateur d'Amazon Simple Storage Service.

      • Pour les nouveaux objets ajoutés à votre compartiment Amazon S3, vous pouvez configurer le chiffrement par clé du compartiment Amazon S3 par défaut. Si des objets existants ont été chiffrés sans utiliser la fonctionnalité de clé Amazon S3bucket, ces objets doivent être migrés pour utiliser la clé de compartiment Amazon S3 à des fins de chiffrement.

        Pour activer la clé de compartiment Amazon S3 pour les objets existants, utilisez cette copy opération. Pour plus d'informations, consultez Configuration d'une clé de compartiment Amazon S3 au niveau de l'objet à l'aide d'opérations par lots.

      • AWS clés KMS gérées ou Clés détenues par AWS non prises en charge. Vous pouvez migrer d'un schéma de chiffrement non pris en charge vers ceux actuellement pris en charge. Pour plus d'informations, consultez la section Modification de votre chiffrement Amazon S3 sur le blog AWS Storage.

    3. Configurez les compartiments Amazon S3 hébergeant les données de manière à ce qu'ils fassent confiance aux points d'accès AWS Data Exchange détenus. Vous devez mettre à jour ces politiques relatives aux compartiments Amazon S3 pour autoriser AWS Data Exchange la création de points d'accès Amazon S3 et accorder ou supprimer l'accès aux abonnés en votre nom. Si la déclaration de politique est manquante, vous devez modifier la politique de bucket pour ajouter les emplacements Amazon S3 à votre ensemble de données.

      Un exemple de stratégie est illustré ci-dessous. Remplacez <Bucket ARN> par la valeur appropriée.

      JSON
      { "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::BucketName", "arn:aws:s3:::/*" ], "Condition": { "StringEquals": { "s3:DataAccessPointAccount": [ "337040091392", "504002150500", "366362662752", "330489627928", "291973504423", "461002523379", "036905324694", "540564263739", "675969394711", "108584782536", "844053218156" ] } } } ] }

Vous pouvez déléguer le partage de données AWS Data Exchange à l'ensemble d'un compartiment Amazon S3. Vous pouvez toutefois étendre la délégation aux préfixes et objets spécifiques du bucket que vous souhaitez partager dans l'ensemble de données. Voici un exemple de politique délimitée. Remplacez <Bucket ARN> et "mybucket/folder1/*" par vos propres informations.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "DelegateToAdxGetObjectsInFolder1", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::mybucket/folder1/*" ], "Condition": { "StringEquals": { "s3:DataAccessPointAccount": [ "337040091392", "504002150500", "366362662752", "330489627928", "291973504423", "461002523379", "036905324694", "540564263739", "675969394711", "108584782536", "844053218156" ] } } }, { "Sid": "DelegateToAdxListObjectsInFolder1", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::mybucket", "Condition": { "StringLike": { "s3:prefix": [ "folder1/*" ] }, "StringEquals": { "s3:DataAccessPointAccount": [ "337040091392", "504002150500", "366362662752", "330489627928", "291973504423", "461002523379", "036905324694", "540564263739", "675969394711", "108584782536", "844053218156" ] } } } ] }

De même, pour limiter l'accès à un seul fichier, le propriétaire des données peut utiliser la politique suivante.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "DelegateToAdxGetMyFile", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::mybucket/folder1/myfile" ], "Condition": { "StringEquals": { "s3:DataAccessPointAccount": [ "337040091392", "504002150500", "366362662752", "330489627928", "291973504423", "461002523379", "036905324694", "540564263739", "675969394711", "108584782536", "844053218156" ] } } } ] }

Les rubriques suivantes décrivent le processus de création d'un ensemble de données Amazon S3 et d'une attribution de données avec des ensembles de données Amazon S3 à l'aide de la AWS Data Exchange console. Le processus comporte les étapes suivantes :

Étape 1 : Création d'un ensemble de données Amazon S3

Pour créer un ensemble de données Amazon S3
  1. Dans le volet de navigation de gauche, sous Mes données, sélectionnez Ensembles de données détenus.

  2. Dans Ensembles de données détenus, choisissez Créer un ensemble de données pour ouvrir l'assistant Étapes de création d'un ensemble de données.

  3. Dans Sélectionnez le type d'ensemble de données, choisissez Amazon S3 data access.

  4. Dans Définir un ensemble de données, entrez un nom et une description pour votre ensemble de données. Pour de plus amples informations, veuillez consulter Meilleures pratiques en matière d'ensembles de données.

  5. (Facultatif) Sous Ajouter des balises — facultatif, ajoutez des balises.

  6. Choisissez Créer un ensemble de données et continuez.

Étape 2 : Configuration de l'accès aux données Amazon S3

Choisissez les compartiments Amazon S3 ou les emplacements des compartiments Amazon S3 que vous souhaitez mettre à la disposition des destinataires. Vous pouvez sélectionner un compartiment Amazon S3 complet ou spécifier jusqu'à cinq préfixes ou objets dans un compartiment Amazon S3. Pour ajouter d'autres compartiments Amazon S3, vous devez créer un autre partage de données Amazon S3.

Pour configurer l'accès partagé aux données Amazon S3
  1. Sur la page Configurer l'accès aux données Amazon S3, sélectionnez Choisir les emplacements Amazon S3.

  2. Dans Choisir les emplacements Amazon S3, saisissez le nom de votre compartiment Amazon S3 dans la barre de recherche ou sélectionnez votre compartiment Amazon S3, ses préfixes ou ses fichiers Amazon S3 et choisissez Ajouter la sélection. Choisissez ensuite Ajouter des emplacements.

    Note

    Nous vous recommandons de choisir un dossier de niveau supérieur dans lequel la majorité des objets et des préfixes sont stockés afin que les propriétaires des données n'aient pas à reconfigurer les préfixes ou les objets à partager.

  3. Dans Détails de configuration, choisissez votre configuration RequesterPays. Deux options s’offrent à vous :

    • Activer le paiement par le demandeur (recommandé) — Les demandeurs paieront pour toutes les demandes et tous les transferts dans le compartiment Amazon S3. Nous recommandons cette option car elle permet de vous protéger contre les coûts imprévus liés aux demandes et aux transferts des destinataires.

    • Désactiver le paiement par le demandeur  : vous payez les demandes et les transferts des destinataires dans le compartiment Amazon S3.

      Pour plus d'informations sur Requester Pays, consultez la section Objets figurant dans les compartiments Requester Pays dans le Guide de l'utilisateur d'Amazon Simple Storage Service.

  4. Sélectionnez la politique en matière de compartiments qui correspond le mieux à vos besoins. Choisissez Général pour utiliser une politique de compartiment pour l'ensemble de votre compartiment Amazon S3. Il s'agit d'une configuration unique et aucune configuration supplémentaire n'est nécessaire pour partager des préfixes ou des objets ultérieurement. Choisissez Spécifique pour utiliser une politique de compartiment spécifique aux emplacements Amazon S3 sélectionnés. Votre compartiment Amazon S3 partagé nécessite la mise en place d'une politique de compartiment pour créer un ensemble de données d'accès aux données Amazon S3 avec succès. Les ACL ne peuvent pas être activées.

    1. Pour désactiver les ACL, accédez aux autorisations de votre bucket et définissez Object Ownership sur Bucket owner forced.

    2. Pour ajouter une politique de compartiment, copiez l'énoncé du compartiment dans votre presse-papiers. Dans la console Amazon S3, depuis l'onglet Autorisations Amazon S3, choisissez Modifier dans la section Politique de compartiment, collez la politique de compartiment dans la déclaration, puis enregistrez les modifications.

  5. Si le compartiment Amazon S3 contient des objets chiffrés à l'aide de clés gérées par le AWS KMS client, vous devez partager toutes ces clés KMS avec AWS Data Exchange. Pour plus d'informations sur les prérequis requis lors de l'utilisation de clés KMS pour chiffrer des objets dans votre compartiment Amazon S3, consultez. Publier un produit dans AWS Data Exchange contenant l'accès aux données Amazon S3 Pour partager ces clés KMS avec AWS Data Exchange, procédez comme suit :

    1. Sur la page Configurer l'accès aux données Amazon S3, dans Clés KMS gérées par le client, sélectionnez Choisir parmi votre ARN AWS KMS keys ou Entrez votre AWS KMS key ARN et sélectionnez tout AWS KMS keys ce qui est actuellement utilisé pour chiffrer les emplacements partagés Amazon S3. AWS Data Exchange utilise ces clés KMS pour créer des autorisations permettant aux bénéficiaires d'accéder à vos positions partagées. Pour plus d'informations, consultez la section Subventions dans AWS KMS.

    Note

    AWS KMS a une limite de 50 000 subventions par clé KMS, y compris les subventions préexistantes.

  6. Vérifiez vos emplacements Amazon S3, les clés KMS sélectionnées et les détails de configuration, puis choisissez Enregistrer et continuer.

Étape 3 : Examiner et finaliser l'ensemble de données

Passez en revue et finalisez l'ensemble de données que vous venez de créer. Si vous souhaitez créer et ajouter un autre accès aux données Amazon S3 pour partager l'accès à des compartiments, des préfixes et des objets Amazon S3 supplémentaires, choisissez Ajouter un autre accès aux données Amazon S3.

Note

Nous vous le recommandons lorsque vous devez partager l'accès à des données hébergées dans un compartiment Amazon S3 différent de celui précédemment sélectionné lors de l'accès aux données Amazon S3 initial.

Si vous souhaitez apporter des modifications avant de publier, vous pouvez enregistrer l'ensemble de données en tant que brouillon en choisissant Enregistrer le brouillon. Choisissez ensuite Finaliser l'ensemble de données pour l'ajouter à votre autorisation de données.

Étape 4 : Création d'une nouvelle autorisation de données

Une fois que vous avez créé au moins un ensemble de données et finalisé une révision avec des actifs, vous êtes prêt à utiliser cet ensemble de données dans le cadre d'une attribution de données.

Pour créer une nouvelle autorisation de données
  1. Dans le volet de navigation gauche de la AWS Data Exchange console, sous Accordations de données échangées, sélectionnez Autorisations de données envoyées.

  2. Dans Autorisations de données envoyées, choisissez Créer une autorisation de données pour ouvrir l'assistant de définition de l'autorisation de données.

  3. Dans la section Sélectionner l'ensemble de données détenu, cochez la case à côté de l'ensemble de données que vous souhaitez ajouter.

    Note

    L'ensemble de données que vous choisissez doit avoir fait l'objet d'une révision définitive. Les ensembles de données sans révisions finalisées ne peuvent pas être ajoutés aux autorisations de données.

    Contrairement aux ensembles de données inclus dans les produits de données qui sont partagés AWS Marketplace, les ensembles de données ajoutés aux autorisations de données ne sont soumis à aucune règle d'accès aux révisions, ce qui signifie que le destinataire d'une autorisation de données, une fois l'autorisation de données approuvée, aura accès à toutes les révisions finalisées d'un ensemble de données donné (y compris les révisions historiques finalisées avant la création de la subvention de données).

  4. Dans la section Aperçu de la subvention, saisissez les informations que le destinataire aura accès à propos de votre autorisation de données, notamment le nom de la subvention de données et la description de la subvention de données.

  5. Choisissez Suivant.

    Pour de plus amples informations, veuillez consulter Bonnes pratiques en matière de produits dans AWS Data Exchange.

  6. Dans la section Informations d'accès du destinataire, sous Compte AWS ID, entrez l' Compte AWS ID du compte destinataire qui doit recevoir l'autorisation de données.

  7. Sous Date de fin d'accès, sélectionnez une date de fin spécifique pour l'expiration de la licence de données ou, si la licence doit exister à perpétuité, sélectionnez Aucune date de fin.

  8. Choisissez Suivant.

  9. Dans la section Réviser et envoyer, passez en revue les informations relatives à l'octroi de vos données.

  10. Si vous êtes sûr de vouloir créer l'autorisation de données et l'envoyer au destinataire choisi, choisissez Créer et envoyer l'autorisation de données.

Vous avez maintenant terminé la partie manuelle de la création d'une attribution de données. L'autorisation de données s'affichera dans l'onglet Autorisations de données envoyées de la page Autorisations de données envoyées et indiquera son statut comme En attente d'acceptation jusqu'à ce que le compte du destinataire l'accepte.