La référence de l'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.
Fonctionne avec les composants d'EC2 Image Builder
En tant que vendeur AWS Marketplace, vous pouvez répertorier les AMI-based produits livrés aux acheteurs d'AWS Marketplace à l'aide des composants EC2 Image Builder. Pour créer votre composant et publier une AWS Marketplace liste, parcourez les sections suivantes de manière séquentielle.
Rubriques
Création et test de votre composant Image Builder
Créez et testez votre composant sur Image Builder. Pour obtenir des instructions, reportez-vous à la section Développement de composants personnalisés pour votre image Image Builder dans le Guide de l'utilisateur d'Image Builder. Lorsque vous créez votre composant à l'aide d'Image Builder, veillez à effectuer les opérations suivantes :
-
Le composant et toutes ses dépendances sous-jacentes, telles qu'un compartiment Amazon Simple Storage Service (Amazon S3), des secrets ou des paramètres, doivent être créés dans la région AWS USA Est (Virginie du Nord
us-east-1) (). -
Incluez l'architecture prise en charge et toutes les dépendances logicielles dans la description des composants.
-
Testez votre composant dans votre AWS compte en créant un pipeline d'images et en déployant l'AMI créée par le pipeline.
-
Si votre composant contient des instructions pour copier des fichiers binaires, des packages ou des fichiers depuis un compartiment S3, utilisez le module
S3Downloadd'action. Dans leS3Downloadmodule, poursource, entrez l'emplacement statique de votre fichier dans le compartiment S3. L'exemple suivant copie un fichier binaire depuis un compartiment S3 dans le cadre de l'installation du composant.- name: DownloadMyFile action: S3Download inputs: - source: s3://amzn-s3-demo-source-bucket/path/to/package.zip destination: C:\myfolder\package.zip -
Les composants peuvent ingérer des fichiers d'une taille maximale de 2 Go lors de l'utilisation de l'
S3Downloadaction. -
Si votre composant utilise des paramètres, assurez-vous que tous les paramètres ont des valeurs par défaut. Par exemple, si vous avez un paramètre nommé
region, assurez-vous que vous disposez d'une valeur par défaut valide, telle queus-east-1. Ces valeurs par défaut sont destinées AWS Marketplace au traitement et aux tests. Les tests peuvent échouer si vous n'incluez pas de valeurs par défaut. -
Si votre composant utilise AWS Secrets Manager Parameter Store ou une fonctionnalité permettant de AWS Systems Manager stocker des paramètres, procédez comme suit :
-
-
Pour récupérer des valeurs en tant qu'étape dans votre composant, intégrez AWS Command Line Interface des commandes dans votre fichier de configuration YAML.
-
Créez une entrée correspondante dans Secrets Manager ou Parameter Store de votre AWS compte. Utilisez la clé par défaut et fournissez une valeur valide qui facilitera la création du composant pendant le processus de AWS Marketplace test. Par exemple, supposons que vous ayez un paramètre appelé
saas_tokenavec une valeur par défauttokenqui utilise Parameter Store. Dans ce cas, créez une paire clé-valeur dans Parameter Store.tokenUtilisez-le comme clé. Pour la valeur, entrez un jeton SaaS valide pour votre application.Notez que les valeurs enregistrées dans votre compte AWS Marketplace vendeur ne seront utilisées qu'à des fins de AWS Marketplace test. Ces valeurs ne seront pas communiquées aux acheteurs.
-
AWS Marketplace génère automatiquement des Amazon Machine Images (AMI) pour votre composant dans toutes les versions de système d'exploitation compatibles que vous choisissez lors du processus de création du composant. Lors de la création de votre composant, choisissez au moins une version de système d'exploitation compatible. Validez la compatibilité de votre composant avec toutes les versions de système d'exploitation choisies en utilisant les pipelines EC2 Image Builder pour créer et tester des AMI.
-
Copier l'ARN du composant
Après avoir créé et testé le composant sur Image Builder, copiez et enregistrez l'ARN du composant. Vous utiliserez l'ARN lorsque vous publierez la liste des produits à l'aide de l'API du AWS Marketplace catalogue.
Pour copier l'ARN du composant Image Builder
-
Connectez-vous à l'AWS Management Console et ouvrez la console Image Builder à l'adressehttps://console.aws.amazon.com/imagebuilder/
. -
Dans la barre de navigation de gauche, sous Ressources enregistrées, choisissez Composants.
-
Sur la page Composants, pour Propriétaire du filtre, choisissez Owned by me.
-
Choisissez le nom du composant.
-
Sur la page détaillée du composant, dans la section Résumé, copiez l'ARN.
Création AWS Marketplace politiques IAM
Créez les politiques IAM suivantes pour autoriser l' AWS Marketplace accès à votre composant Image Builder et aux ressources associées, telles que les compartiments et les secrets Amazon S3. Utilisez les exemples de politiques fournis. Vous associez ces politiques à un rôle AWS Marketplace IAM. Pour obtenir de l'aide sur la création de politiques, consultez la section Création de politiques à l'aide de l'éditeur JSON dans le Guide de l'utilisateur IAM.
-
Politique d'accès aux composants d'Image Builder, pour permettre l'accès AWS Marketplace à votre composant sur Image Builder. Cette politique est obligatoire. Nommez la stratégie
mp_ib_ingest. -
Politique d'accès en lecture Amazon S3, pour permettre de récupérer des fichiers binaires AWS Marketplace à partir d'un compartiment S3. Cette politique n'est requise que si votre composant utilise le module
S3Downloadd'action et stocke les fichiers binaires associés dans un compartiment S3. Nommez la stratégiemp_ib_s3_read_only. -
Politique d'accès en lecture de Secrets Manager, pour permettre de AWS Marketplace récupérer les secrets stockés dans Secrets Manager. Cette politique n'est requise que si votre composant utilise le Gestionnaire de secrets pour stocker des secrets. Nommez la stratégie
mp_ib_sm_read_only. Pour limiter la politique à votre secret, remplacez le mot*de laResourcesection par votre secret. -
Politique d'accès en lecture au magasin de paramètres, pour permettre de AWS Marketplace récupérer les secrets stockés dans le magasin de paramètres. Cette politique n'est requise que si votre composant utilise Parameter Store pour stocker des secrets. Nommez la stratégie
mp_ib_ssm_parameter_read_only. Pour limiter la politique à votre secret, remplacez le mot*de laResourcesection par votre secret.
Création du AWS Marketplace Rôle IAM
Utilisez la procédure suivante pour créer un rôle AWS Marketplace IAM avec des politiques permettant d'accorder l' AWS Marketplace accès à votre composant et à ses dépendances.
Pour créer le AWS Marketplace Rôle IAM
-
Connectez-vous à la console de AWS gestion et ouvrez la console IAM à https://console.aws.amazon.com/iam/
l'adresse. -
Dans la barre de navigation de gauche, choisissez Rôles.
-
Choisissez Créer un rôle.
-
Sélectionnez Politique de confiance personnalisée.
-
Entrez la déclaration suivante :
-
Choisissez Suivant.
-
Ajoutez la politique d'obtention des composants d'Image Builder que vous avez créée précédemment. La politique Get-Component est obligatoire. Ajoutez les politiques pertinentes pour S3, Secrets Manager et Parameter Store si votre composant utilise ces AWS services.
-
Choisissez Suivant.
-
Entrez un nom de rôle, tel que
MPEC2IBIngestion. -
Choisissez Créer un rôle.
Texte AWS Marketplace L’ARN du rôle IAM
Après avoir créé le rôle AWS Marketplace IAM, copiez et enregistrez le rôle ARN. Vous utiliserez l'ARN lors de la publication de la liste à l'aide de l'API du AWS Marketplace catalogue.
Pour copier le AWS Marketplace L’ARN du rôle IAM
-
Dans la console IAM, dans la barre de navigation de gauche, sélectionnez Rôles.
-
Choisissez le rôle AWS Marketplace IAM que vous avez créé précédemment, par exemple
MPEC2IBIngestion. -
Sur la page détaillée du rôle, dans la section Résumé, copiez l'ARN.
Préparez la liste des composants de votre Image Builder
Avant de publier votre AWS Marketplace annonce, assurez-vous de disposer des informations suivantes :
-
Métadonnées du produit : les métadonnées incluent le logo du produit, le titre du produit, le contrat de licence utilisateur final, les types d'instances pris en charge et la région AWS.
-
Informations sur les prix — Vous pouvez proposer votre produit gratuitement, à un tarif horaire ou à un taux horaire avec une période d'essai gratuite initiale. Bring your own license (BYOL) n'est pas pris en charge.
-
Détails du composant : les détails incluent le numéro de ressource Amazon (ARN) du composant, les détails d'utilisation et le rôle Gestion des identités et des accès AWS (IAM) qui AWS Marketplace sera assumé pour traiter votre composant.
Publication de la liste des produits de vos composants Image Builder
Cette rubrique contient des instructions pour publier la liste de vos composants EC2 Image Builder à l' AWS Marketplace aide de l'API AWS Marketplace Catalog.
Conditions préalables
Assurez-vous de disposer des éléments suivants avant de publier la liste des produits de votre composant Image Builder :
-
Inscription en tant que vendeur dans AWS Marketplace. Pour plus d'informations, consultez la section S'inscrire en tant que vendeur AWS Marketplace
. -
Un utilisateur IAM
AWSMarketplaceSellerFullAccessautorisé. -
Un compartiment Amazon Simple Storage Service (Amazon S3) accessible au public pour héberger le logo et le CLUF de votre entreprise, s'ils sont utilisés dans votre composant. Vous allez saisir l'URL du compartiment S3 dans votre fichier
ChangeSetJSON. -
AWS Command Line Interface (AWS CLI). Pour plus d'informations, consultez Qu'est-ce que l'interface de ligne de commande AWS ? dans le Guide de AWS Command Line Interface l'utilisateur.
Création d'un produit composant Image Builder sur AWS Marketplace
Pour créer un produit composant EC2 Image Builder à l' AWS Marketplace aide de l'API Catalog, reportez-vous àCréation d'un produit.
Mise à jour des informations sur le produit du composant Image Builder
Vous pouvez mettre à jour les informations relatives à un composant Image Builder sur le portail AWS Marketplace de gestion.
Pour mettre à jour les informations sur le produit du composant Image Builder
-
Ouvrez le Portail de gestion AWS Marketplace
et connectez-vous à votre compte vendeur. -
Dans le menu Produits, choisissez Serveur.
-
Sur la page Produits du serveur, sélectionnez le produit.
-
Sur la page détaillée du produit, dans le menu Demander des modifications, choisissez l'article qui correspond aux informations que vous souhaitez mettre à jour.
-
Une fois les modifications soumises, la demande apparaîtra dans l'onglet Demandes avec le statut « En cours de révision » et passera à « Succès » une fois terminée.
Ajouter une nouvelle version à un produit composant Image Builder existant
Vous pouvez ajouter une nouvelle version à un produit composant Image Builder à l' AWS Marketplace aide du AWS Marketplace Catalog API.
Pour ajouter une nouvelle version
-
À partir de Portail de gestion AWS Marketplace, obtenez l'ID du produit.
-
Ouvrez le Portail de gestion AWS Marketplace
et connectez-vous à votre compte vendeur. -
Dans le menu Produits, choisissez Serveur.
-
Sur la page Produits du serveur, sélectionnez le produit.
-
Dans le récapitulatif du produit, copiez l'identifiant du produit.
-
-
À l'aide de l'exemple de code suivant, créez un fichier de modifications au format JSON. Dans l'exemple, remplacez-le
your-product-IDpar l'identifiant du produit que vous avez obtenu à l'étape 1. Remplacez-lenew-version-namepar le titre de votre version. Remplacez-lenew-delivery-option-titlepar le titre de votre option de livraison.[ { "ChangeType": "AddDeliveryOptions", "Entity": { "Identifier": "your-product-ID", "Type": "AmiProduct@1.0" }, "DetailsDocument": { "Version": { "VersionTitle": "new-version-name", "ReleaseNotes": "Release notes goes here." }, "DeliveryOptions": [ { "DeliveryOptionTitle": "new title", "Details": { "Ec2ImageBuilderComponentDeliveryOptionDetails": { "UsageInstructions": "Test usage instructions for IB", "AccessRoleArn": "arn:aws:iam::123456789:role/sample", "ComponentArn": "arn:aws:imagebuilder:us-east-1:123456789:component/sample/2.0.0/1" } } } ] } } ] -
Enregistrez le fichier de modifications sous son nom
addIBversion.json. -
Dans votre terminal ou AWS CloudShell exécutez la commande suivante :
aws marketplace-catalog start-change-set --catalog AWSMarketplace --region us-east-1 --change-set file://addIBversion.json
La start-change-set commande renverra une ChangeSetId valeur. Pour surveiller un ensemble de modifications, consultezSurveillance d'un ensemble de modifications.
Erreurs asynchrones
Les erreurs suivantes sont spécifiques aux AddDeliveryOptions actions du AWS Marketplace Catalog API. Ces erreurs sont renvoyées lorsque vous appelez DescribeChangeSet après le traitement d'un ensemble de modifications. Pour plus d'informations sur l'utilisation DescribeChangeSet pour obtenir le statut d'une demande de modification, consultezTravailler avec des ensembles de modifications.
Note
Les codes d'erreur suivants sont spécifiques à la méthode de diffusion d'Image Builder. Pour les messages d'erreur existants relatifs à des champs tels que Usage InstructionsRecommended Instance type, etAccessRoleArn, consultezAjouter une nouvelle version.
| Code d’erreur | Message d’erreur |
|---|---|
ACTIF_NON_TROUVÉ |
|
ACTIF_NON_TROUVÉ |
|
NOM_DUPLIQUE_COMPOSANT |
|
NOM_DUPLIQUE_COMPOSANT |
|
DUPLICATE_COMPONENT_ARN |
|
DUPLICATE_COMPONENT_ARN |
|
ERREUR DE NUMÉRISATION |
|
EXCEPTION D'ACCÈS AUX ACTIFS |
|
EXCEPTION D'ACCÈS AUX ACTIFS |
|
EXCEPTION D'ACCÈS AUX ACTIFS |
|
EXCEPTION D'ACCÈS AUX ACTIFS |
|
PACKAGE_IMAGE_BUILDER_COMPONENT_INVALIDE |
|
PACKAGE_IMAGE_BUILDER_COMPONENT_INVALIDE |
|
TROP DE COMPOSANTS_IMAGE_BUILDER_D'IMAGES |
|
PROFIL_PUBLIC_DU VENDEUR INCOMPLET |
|
DESCRIPTION_NON VALIDE |
|
NOM_COMPOSANT_INVALIDE |
|
VERSION DU SYSTÈME D'EXPLOITATION NON VALIDE |
|
FORMAT_DE_CHEMIN NON VALIDE |
|
TYPE DE SYSTÈME D'EXPLOITATION INCOMPATIBLE |
|
EXCEPTION D'ACCÈS AUX ACTIFS |
|
EXCEPTION D'ACCÈS AUX ACTIFS |
|
VERSION_INVALID_IB_COMPONENT_BUILD_ |
|
PARAMÈTRE_IB_COMPONENT_INVALIDE |
|
PARAMÈTRE_IB_COMPONENT_INVALIDE |
|
PARAMÈTRE_IB_COMPONENT_MANQUANT |
|
PARAMÈTRE_IB_COMPONENT_INVALIDE |
|
ÉCHEC DU TEST_DE LANCEMENT |
|
SSHAuthFailedForUserAndKeypair |
|
INVALID_IB_COMPONENT |
|
TITRE DE LA VERSION DUPLIQUÉE |
|
TITRE_DE_VERSION NON VALIDE |
|
TITRE_DE_VERSION NON VALIDE |
|
TITRE_DE_VERSION NON VALIDE |
|
TITRE_DE_VERSION NON VALIDE |
|
NOTES_DE_PUBLICATION INVALIDES |
|
NOTES_DE_PUBLICATION INVALIDES |
|
NOTES_DE_PUBLICATION INVALIDES |
|
NOTES_DE_PUBLICATION INVALIDES |
|
INSTRUCTION_D'UTILISATION_INVALIDE |
|
INSTRUCTION_D'UTILISATION_INVALIDE |
|
INSTRUCTION_D'UTILISATION_INVALIDE |
|
DUPLICATE_DELIVERY_OPTION_TITLES |
|
TITRES_OPTION_DE_LIVRAISON NON VALIDES |
|
Mettre à jour les informations relatives à une version existante
Pour mettre à jour les informations relatives à une version existante
-
À partir de Portail de gestion AWS Marketplace, obtenez l'ID du produit.
-
Ouvrez le Portail de gestion AWS Marketplace
et connectez-vous à votre compte vendeur. -
Dans le menu Produits, choisissez Serveur.
-
Sur la page Produits du serveur, sélectionnez le produit.
-
Dans le récapitulatif du produit, copiez l'identifiant du produit.
-
-
Dans votre terminal, exécutez la commande suivante. Dans la commande, remplacez-le
your-product-IDpar l'ID que vous avez obtenu à l'étape 1.aws marketplace-catalog describe-entity --catalog AWSMarketplace --region us-east-1 --entity-id 'your-product-ID' -
Dans la sortie renvoyée, accédez à la
VersionssectionDetailsDocument,. Copiez laIdvaleurDeliveryOptions, pour la version que vous souhaitez mettre à jour. -
À l'aide de l'exemple de code suivant, créez un fichier de modifications au format JSON. Dans l'exemple, remplacez-le
your-product-IDpar l'identifiant du produit que vous avez obtenu à l'étape 1.your-release-notesRemplacez-le par vos notes de publication. Remplacez-leyour-delivery-option-IDpar l'ID de l'option de livraison que vous avez obtenue à l'étape 3.your-usage-instructionsRemplacez-le par vos instructions d'utilisation.[ { "ChangeType": "UpdateDeliveryOptions", "Entity": { "Identifier": "your-product-ID", "Type": "AmiProduct@1.0" }, "DetailsDocument": { "Version": { "ReleaseNotes": "your-release-notes" }, "DeliveryOptions": [ { "Id": "your-delivery-option-ID", "Details": { "Ec2ImageBuilderComponentDeliveryOptionDetails": { "UsageInstructions": "your-usage-instructions" } } } ] } } ] -
Enregistrez le fichier de modifications sous son nom
updateVersionInfo.json. -
Dans votre terminal ou AWS CloudShell exécutez la commande suivante :
aws marketplace-catalog start-change-set --catalog AWSMarketplace --region us-east-1 --change-set file://updateVersionInfo.json
La start-change-set commande renverra une ChangeSetId valeur. Pour surveiller un ensemble de modifications, consultezSurveillance d'un ensemble de modifications.
Restreindre la version d'un produit composant Image Builder
La restriction d'une version la rend inaccessible aux acheteurs. Vous pouvez restreindre une version de votre composant Image Builder à l' AWS Marketplace aide de l'API AWS Marketplace Catalog. Vous devez conserver au moins une version de votre produit sans restriction AWS Marketplace. Vous ne pouvez pas restreindre l'accès à la seule version publique.
Pour mettre à jour les informations relatives à une version existante
-
À partir de Portail de gestion AWS Marketplace, obtenez l'ID du produit.
-
Ouvrez le Portail de gestion AWS Marketplace
et connectez-vous à votre compte vendeur. -
Dans le menu Produits, choisissez Serveur.
-
Sur la page Produits du serveur, sélectionnez le produit.
-
Dans le récapitulatif du produit, copiez l'identifiant du produit.
-
-
Dans votre terminal, exécutez la commande suivante. Dans la commande, remplacez-le
your-product-IDpar l'ID que vous avez obtenu à l'étape 1.aws marketplace-catalog describe-entity --catalog AWSMarketplace --region us-east-1 --entity-id 'your-product-ID' -
Dans la sortie renvoyée, accédez à la
VersionssectionDetailsDocument,. Copiez laIdvaleurDeliveryOptions, pour la version que vous souhaitez mettre à jour. -
À l'aide de l'exemple de code suivant, créez un fichier de modifications au format JSON. Dans l'exemple, remplacez-le
your-product-IDpar l'identifiant du produit que vous avez obtenu à l'étape 1. Remplacez-leyour-delivery-option-IDpar l'ID de l'option de livraison que vous avez obtenue à l'étape 3.[ { "ChangeType": "RestrictDeliveryOptions", "Entity": { "Identifier": "your-product-ID", "Type": "AmiProduct@1.0" }, "DetailsDocument": { "DeliveryOptionIds": [ "your-delivery-option-ID" ] } } ] -
Enregistrez le fichier de modifications sous son nom
restrictec2ibversion.json. -
Dans votre terminal ou AWS CloudShell exécutez la commande suivante :
aws marketplace-catalog start-change-set --catalog AWSMarketplace --region us-east-1 --change-set file://restrictec2ibversion.json
La start-change-set commande renverra une ChangeSetId valeur. Pour surveiller un ensemble de modifications, consultezSurveillance d'un ensemble de modifications.
Surveillance d'un ensemble de modifications
La start-change-set commande renverra une ChangeSetId valeur. Vous pouvez suivre la progression de l'ensemble des modifications de la manière suivante :
-
Exécutez la commande suivante dans votre terminal. Dans la commande, remplacez
changeset-IDpar laChangeSetIdvaleur renvoyée par lastart-change-setcommande.aws marketplace-catalog describe-change-set ‐‐catalog AWSMarketplace ‐‐change-set-idchangesetID -
Consultez l'état de la demande dans l'onglet Demandes du portail AWS Marketplace de gestion
.
Sécurisation des téléchargements de logiciels
Pour protéger la propriété intellectuelle des logiciels ISV et garantir une fourniture logicielle stable et cohérente aux AWS Marketplace acheteurs, analysez AWS Marketplace automatiquement votre composant S3Download et créez des modules WebDownload d'action. Les fichiers référencés sont ensuite stockés en toute sécurité dans un compartiment Amazon S3 privé géré par AWS Marketplace. Pour désactiver ce processus d'ingestion et gérer les téléchargements de logiciels de manière indépendante, exécutez des scripts bash qui utilisent les commandes wget or curl download.