View a markdown version of this page

Utilisation de AWS Marketplace API pour partager des ressources - AWS Marketplace

La référence d'API AWS Marketplace a été restructurée. Pour plus d'informations sur les opérations d'API prises en charge, consultez le manuel AWS Marketplace API Reference.

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.

Utilisation de AWS Marketplace API pour partager des ressources

AWS Marketplace Catalog API s'intègre à AWS Resource Access Manager (AWS RAM) pour permettre le partage des ressources. Une ressource est une entité avec laquelle les utilisateurs peuvent travailler AWS Marketplace, telle qu'un produit, une offre ou une autorisation de revente. Avec AWS RAM, vous pouvez partager certaines AWS Marketplace Catalog API ressources avec d'autres Comptes AWS. Vous partagez les ressources que vous possédez en créant un partage de ressources. Un partage de ressources indique les ressources que vous souhaitez partager et les consommateurs avec lesquels vous souhaitez les partager.

Prérequis pour partager AWS Marketplace entities

Avant de partager des entités AWS Marketplace Catalog API, vous devez remplir les conditions préalables suivantes :

  • Vous ne pouvez associer qu'une seule politique de ressources à votre AWS Marketplace entité.

  • Pour partager une AWS Marketplace entité, vous devez en être propriétaire dans votre Compte AWS. Cette exigence signifie que l'entité doit être attribuée ou provisionnée sur votre compte. Vous ne pouvez pas partager une AWS Marketplace entité qui a été partagée avec vous.

Partagez un AWS Marketplace entity

Grâce au partage AWS Marketplace des ressources, les propriétaires d'entités peuvent partager leurs entités avec d'autres Comptes AWS utilisateurs AWS Marketplace. Entity-owners peuvent être des ISV et des partenaires de distribution. Les entités pouvant être partagées sont les produits, les offres et les autorisations de revente.

Note

Pour le moment, vous ne pouvez partager que des entités. Les entités AWS Marketplace incluses incluent AmiProduct AudienceBrandingSettings,ContainerProduct,Experience, etProcurementPolicy.

Pour plus d'informations AWS RAM, consultez le guide de AWS RAM l'utilisateur. Pour plus d'informations sur la gestion de vos ressources partagées, consultez la section Utilisation AWS des ressources partagées dans le Guide de AWS RAM l'utilisateur.

En tant que compte de partage, vous pouvez définir la lecture seule ou les deux pour read/write les ressources que vous souhaitez partager. Ces autorisations déterminent les opérations qu'un compte consommateur peut effectuer sur les ressources partagées avec lui.

  • Compte de partage : ressource partagée dans laquelle l' AWS RAM administrateur crée le partage de AWS ressources en utilisant AWS RAM.

  • Compte consommateur : le Compte AWS compte avec lequel une ressource est partagée. Le partage de ressources peut spécifier un compte entier comme principal ou, pour certains types de ressources, des rôles individuels ou des utilisateurs du compte.

Pour partager une AWS Marketplace entité, vous devez l'ajouter à un partage de ressources. Un partage de ressources est une ressource AWS RAM qui vous permet de partager vos ressources entre des Comptes AWS. Un partage de ressources spécifie les ressources à partager, ainsi que les consommateurs avec qui elles seront partagées. Lorsque vous partagez une entité à l'aide de la AWS Marketplace console, vous l'ajoutez à un partage de ressources existant. Pour ajouter l' AWS Marketplace entité à un nouveau partage de ressources, vous devez d'abord créer le partage de ressources à l'aide de la AWS RAM console.

Vous pouvez partager une AWS Marketplace entité dont vous êtes propriétaire à l'aide de la AWS Marketplace AWS RAM console, de la console ou du AWS Command Line Interface (AWS CLI).

Pour partager un AWS Marketplace entité que vous possédez à l'aide du AWS RAM console

Consultez Création d’un partage de ressources dans le Guide de l’utilisateur AWS RAM .

Pour partager un AWS Marketplace entité que vous possédez à l'aide du AWS CLI

Utilisez la commande create-resource-share.

Note

Pour les types de ressources tels que les entités qui prennent en charge les politiques basées sur les ressources, vous pouvez les utiliser AWS RAM pour partager des ressources afin d'utiliser des fonctionnalités supplémentaires AWS RAM . Pour plus d'informations, consultez la Resource-based politique dans le guide de AWS RAM l'utilisateur. AWS RAM utilise le AWS Marketplace Catalog API pour créer automatiquement la politique de ressources à partir des autorisations d'un partage de ressources et gère cette politique de ressources pour vous.

Pour plus d'informations sur la façon de définir, d'afficher ou de supprimer des politiques AWS basées sur les ressources dans votre AWS Marketplace entité AWS RAM, consultez la section Autoriser les actions sur toutes les ressources dans le Guide de l'AWS RAMutilisateur.

Différences entre le partage d'une entité via AWS RAM et le AWS Marketplace Catalog API

Outre le partage de votre entité via AWS RAM, vous pouvez également définir, afficher ou supprimer des politiques AWS basées sur les ressources sur vos entités via le. AWS Marketplace Catalog API Cependant, il existe quelques différences entre le partage de votre entité via AWS RAM et via le AWS Marketplace Catalog API.

Lorsque vous partagez une entité par le biais de AWS RAM :

  • Si vous partagez votre entité avec des comptes extérieurs à AWS Organizations, le compte consommateur doit d'abord accepter votre demande de partage avant que l'entité ne soit partagée.

  • Le compte consommateur peut découvrir l'entité partagée ListEntities grâce à la commande OwnershipType set toSHARED.

  • Vous devez respecter plusieurs quotas de ressources. Pour plus d’informations, consultez Quotas de service pour AWS RAM dans le Guide de l’utilisateur AWS RAM .

Lorsque vous partagez une entité par le biais de AWS Marketplace Catalog API :

  • Votre entité sera partagée dès que la PutResourcePolicy demande aura été acceptée, sans aucune saisie de la part du compte consommateur.

  • Le compte consommateur ne peut pas découvrir l'entité partagée si ce ListEntities paramètre OwnershipType est défini surSHARED. Le propriétaire du compte de partage doit plutôt informer le compte consommateur de l'ID de l'entité partagée.

Note

Si votre cas d'utilisation nécessite le partage de ressources susceptibles de dépasser les quotas de AWS RAM service, ou si vous souhaitez partager des ressources sans intervention directe du compte consommateur, envisagez de les partager via le AWS Marketplace Catalog API. Pour tous les autres cas d'utilisation, pensez AWS RAM à utiliser pour partager AWS Marketplace des ressources.

Les sections suivantes expliquent comment définir, afficher ou supprimer des politiques AWS basées sur les ressources sur vos entités via le. AWS Marketplace Catalog API

Associez une politique de lecture seule à votre ressource

Vous pouvez créer une politique basée sur les ressources en lecture seule sur votre ressource partagée à l'aide d'un compte de partage. Avec cette politique, le directeur ne peut consulter que les détails de la ressource partagée avec lui.

Demande

POST /PutResourcePolicy HTTP/1.1 Content-type: application/json { "ResourceArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example2-abcd-1234-5ef6", "Policy": { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::222233334444:root" }, "Action": [ "aws-marketplace:DescribeEntity" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example2-abcd-1234-5ef6" ] } } }

Réponse

HTTP/1.1 200 Content-type: application/json {}

Attachez une politique de lecture et d'écriture à votre ressource

En tant que compte de partage, vous pouvez créer une politique de lecture et d'écriture basée sur les ressources pour votre ressource partagée. Grâce à cette politique, le principal peut consulter les détails et effectuer des opérations d'écriture sur la ressource partagée avec lui.

Demande

POST /PutResourcePolicy HTTP/1.1 Content-type: application/json { "ResourceArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example2-abcd-1234-5ef6", "Policy": { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::222233334444:root" }, "Action": [ "aws-marketplace:DescribeEntity", "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example2-abcd-1234-5ef6" ] } } }

Réponse

HTTP/1.1 200 Content-type: application/json {}

Afficher la politique de ressources définie pour votre ressource

En tant que compte de partage, vous pouvez consulter la politique de ressources définie pour votre ressource partagée.

Demande

POST /GetResourcePolicy HTTP/1.1 Content-type: application/json { "ResourceArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example2-abcd-1234-5ef6" }

Réponse

HTTP/1.1 200 Content-type: application/json { "Policy": { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::222233334444:root" }, "Action": [ "aws-marketplace:DescribeEntity", "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example2-abcd-1234-5ef6" ] } } }

Supprimer la politique de ressources associée à votre ressource

En tant que compte de partage, vous pouvez supprimer la politique de ressources définie pour votre ressource partagée.

Demande

POST /DeleteResourcePolicy HTTP/1.1 Content-type: application/json { "ResourceArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example2-abcd-1234-5ef6" }

Réponse

HTTP/1.1 200 Content-type: application/json {}

Afficher toutes les ressources qui vous appartiennent et qui sont partagées avec vous

En tant que compte consommateur, vous pouvez consulter les ressources partagées avec vous.

Note

Vous ne pouvez consulter les ressources partagées avec vous que si elles ont été partagées via AWS RAM.

Demande

POST /ListEntities HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "EntityType": "AmiProduct", "FilterList": [ { "Name": "EntityId", "ValueList": [ "example2-abcd-1234-5ef6" ] } ], "OwnershipType": "SHARED" }

Réponse

HTTP/1.1 200 Content-type: application/json { "EntitySummaryList": [ { "EntityArn": "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example2-abcd-1234-5ef6", "EntityId": "example2-abcd-1234-5ef6", "EntityType": "AmiProduct", "LastModifiedDate": "2018-02-27T13:45:22Z", "Name": "TestProduct", "Visibility": "public" } ], "NextToken": "" }