AWS Marketplace API リファレンスが再構築されました。サポートされている API オペレーションの詳細については、AWS Marketplace API リファレンスを参照してください。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS MarketplaceCatalog API のアクセスコントロール
を使用して、 で販売者製品をAWS MarketplaceAWS Marketplace Catalog API管理したり、プライベートマーケットプレイスで エクスペリエンスを管理したりできます。ただし、まず、ユーザーまたはロールが呼び出す API 機能にアクセスできることを確認します。
AWS Identity and Access Management(IAM) を使用してユーザーとロールを作成し、エンドユーザーに制限されたアクセス許可を付与するポリシーを割り当てます。ポリシーは、ユーザーまたはロールが を通じてリソースに対して実行できるアクションを定義しますAWS Marketplace Catalog API。
たとえば、エンジニアリング、マーケティング、料金などのロールを定義できます。次に、組織内のユーザーをエンジニアリングロールに追加できます。そのロールでは、販売者製品の新しいバージョンを発行する変更リクエストを開始するアクセス許可が付与される場合があります。ただし、エンジニアリングロールでは、ユーザーがすべての変更セットを一覧表示することはできません。
注記
で製品を販売するにはAWS Marketplace、 を販売者アカウントとして設定AWS アカウントする必要があります。AWS Marketplace販売者になる方法の詳細については、「 販売者ガイド」の「販売者としての開始方法」を参照してください。 AWS Marketplace
AWS管理ポリシーを使用するか、独自の IAM ポリシーを作成して、AWS管理ポリシーで使用できるものよりも細かく制御できます。これらのアプローチの詳細については、以下のトピックを参照してください。
トピック
AWS管理ポリシーを使用したアクションの許可
によって管理されるポリシーを使用してAWS、ユーザーまたはロールにアクセス許可を付与できます。
販売する製品を操作するにはAWS Marketplace、IAM AWSMarketplaceSellerFullAccess 管理ポリシーを使用できます。このポリシーには、他のアクセス許可AWS Marketplace Catalog APIに加えて、 へのフルアクセスがあります。AWSMarketplaceSellerProductsReadOnly ポリシーを使用して Catalog API の読み取り専用アクセスを許可できます。詳細については、「 Seller Guide」の「Controlling access toAWS Marketplace 管理ポータル」、「 Policies and permissions for AWS MarketplaceSellers」、「AWS managed policies for AWS MarketplaceSellers」を参照してください。 AWS Marketplace
プライベートマーケットプレイスを管理するには、アカウントまたはAWS組織のプライベートマーケットプレイスを作成および編集するためのフルアクセス権を持つ IAM AWSPrivateMarketplaceAdminFullAccess 管理ポリシーを使用できます。詳細については、「 購入者ガイド」のAWS Marketplace「サブスクリプションへのアクセスの制御」、「プライベートマーケットプレイス管理者の作成」、およびAWS Marketplace「購入者向けの AWS 管理ポリシー」を参照してください。 AWS Marketplace
または、独自の IAM ポリシーを作成して、 AWSマネージドポリシーで利用可能なものよりも細かく制御することもできます。以下のトピックを使用して、独自の IAM ポリシーを作成します。
すべてのリソースに対するアクションの許可
リソースは、アクションが実行できるオブジェクトです。すべてのアクションで、すべてのリソースタイプを指定できるわけではありません。一部のリソースタイプは、特定のアクションでのみ動作します。詳細については、「サービス認可リファレンス」のAWS Marketplace「カタログのアクション、リソース、および条件キー」を参照してください。
Catalog API には 2 つのリソースタイプがあります。
-
エンティティ – エンティティは、 の販売者製品AWS Marketplaceであるか、プライベートマーケットプレイスでの経験です。
-
ChangeSet – Catalog API を使用してエンティティを変更するたびに、変更セットが返されます。変更セットは、リクエストされた変更とそのステータスを記述します。ステータスが
PREPARING状態の場合、変更セットをキャンセルできます。
ユーザーまたはロールに 内のすべてのエンティティの変更を許可するにはAWS アカウント、次の IAM ポリシーを追加します。このポリシーでは、ユーザーまたはロールはすべてのリソース () で StartChangeSetアクションを使用できます"*"。
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet" ], "Resource": "*" } ] }
Catalog API で使用できるすべてのアクションの詳細については、「サービス認可リファレンス」のAWS Marketplace「Catalog のアクション、リソース、および条件キー」を参照してください。
特定のリソースに対するアクションの許可
注記
StartChangeSet アクションのリソースレベルのアクセス許可と条件コンテキストキーは、Catalog API で使用する場合にのみサポートされます。で使用する場合、これらはサポートされませんAWS Marketplace 管理ポータル
すべてのリソースへの変更を許可する代わりに、リソースレベルのアクセス許可を使用して特定のリソースへの変更を許可できます。
たとえば、すべての販売者製品AWS アカウントではなく、 で特定の販売者製品への変更を許可できます。これを行うには、IAM ポリシーの で販売者の製品の Amazon リソースネーム (ARN) Resource を指定します。
注記
新しい変更セットを作成するアクションで詳細なリソースレベルのアクセス許可を指定するには、リソースのリストに ChangeSet ARN も含める必要があります。ChangeSet ARN には、次のように作成された新しい変更セット ID と一致するワイルドカード (/*) を含める必要があります。
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example1-abcd-1234-5ef6-7890abcdef12", "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/*" ] } ] }
別の例として、すべてのエクスペリエンスではなく、プライベートマーケットプレイスの特定のエクスペリエンスへの変更を許可できます。これを行うには、IAM ポリシーの でエクスペリエンスResourceの ARN を指定します。
注記
新しい変更セットを作成するアクションで詳細なリソースレベルのアクセス許可を指定するには、リソースのリストに ChangeSet ARN も含める必要があります。ChangeSet ARN には、次のように作成された新しい変更セット ID と一致するワイルドカード (/*) を含める必要があります。
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/Experience/exp-example12345", "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/*" ] } ] }
特定のChangeType条件キーを使用したアクションの許可
注記
StartChangeSet アクションのリソースレベルのアクセス許可と条件コンテキストキーは、Catalog API で使用する場合にのみサポートされます。で使用する場合、これらはサポートされませんAWS Marketplace 管理ポータル
Catalog API アクションStartChangeSetには、いくつかの異なる変更タイプがあります。特定の変更タイプにのみアクセスを許可できます。
たとえば、製品タイトルなどの販売者の製品のメタデータへの変更のみを許可し、新しい製品バージョンの追加は許可しない場合があります。この例では、変更タイプUpdateInformationにより、タイトルを含む販売者の製品のメタデータを変更できます。さまざまな変更タイプの詳細については、 AWS Marketplace Catalog APIリファレンスの「販売者製品の使用」および「プライベートマーケットプレイスの使用」を参照してください。
アクションを 1 つ以上の変更タイプに制限するには、条件キーChangeTypeで を指定します。次の IAM ポリシーの例では、 条件演算子は、 が ChangeTypeに一致する場合にのみアクションを許可するようにStringEquals指定しますUpdateInformation。条件キーの詳細については、AWS Identity and Access Management ユーザーガイドの「条件演算子」を参照してください。
注記
新しい変更セットを作成するアクションで詳細なリソースレベルのアクセス許可を指定するには、リソースのリストに ChangeSet ARN も含める必要があります。ChangeSet ARN には、次のように作成された新しい変更セット ID と一致するワイルドカード (/*) を含める必要があります。
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet" ], "Resource": [ "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/AmiProduct/example1-abcd-1234-5ef6-7890abcdef12", "arn:aws:aws-marketplace:us-east-1:123456789012:AWSMarketplace/ChangeSet/*" ], "Condition": { "StringEquals": { "catalog:ChangeType": "UpdateInformation" } } } ] }
特定のaws:ResourceTag条件キーを使用したアクションの許可
注記
StartChangeSet アクションのリソースレベルのアクセス許可と条件コンテキストキーは、Catalog API で使用する場合にのみサポートされます。で使用する場合、これらはサポートされませんAWS Marketplace 管理ポータル
ポリシーを更新し続けたり、エンティティ ARNs のリストを増やしたりすることなく、エンティティのグループに対するアクションを許可できます。これを行うには、リソースのタグ付けを使用します。リソースにタグを追加すると、タグに基づいてそれらのリソースへのアクセスを制御できます。たとえば、各販売者製品の個々の ARNs を指定せずに、販売者製品のグループを記述することを許可できます。
たとえば、次の IAM ポリシーでは、タグキーが product-team、タグ値が のエンティティリソース ("*") に対して DescribeEntityアクションを許可しますteam-xyz。
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:DescribeEntity" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/product-team": "team-xyz" } } } ] }
特定のタグで作成された変更セットの記述とキャンセルを許可することもできます。
たとえば、次の IAM ポリシーでは、タグキーが DescribeChangeSetで、タグ値が である変更セットリソース ("*") に対して product-teamおよび CancelChangeSetアクションを許可しますteam-xyz。
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:DescribeChangeSet", "aws-marketplace:CancelChangeSet" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/product-team": "team-xyz" } } } ] }
また、エンティティに変更セットの開始を許可できるのは、それらのエンティティに特定のタグがある場合のみです。たとえば、特定のタグを持つ販売者製品に変更を許可できます。
たとえば、次の IAM ポリシーでは、タグキーが product-team、タグ値が のエンティティリソース ("*") に対して StartChangeSetアクションを許可しますteam-xyz。さらに、変更セットが作成されると、同じタグキーと値でタグ付けされるように、 TagResourceアクションが必要です。
注記
StartChangeSet アクションを許可するポリシーに、特定のタグと照合する条件が含まれている場合、同じポリシーに TagResourceアクションも含める必要があります。これは、ポリシー条件が、エンティティのタグと、変更リクエストの結果として新しく作成された変更セットのタグの両方と一致する必要があるためです。したがって、ユーザーまたはロールには、新しく作成された変更セットにタグを付けるアクセス許可も必要です。変更セットの開始と変更セットのタグ付けの例については、「」を参照してください例: エンティティへのタグの追加と作成時の変更セット。
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet", "aws-marketplace:TagResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/product-team": "team-xyz" } } } ] }
カスタム IAM ロールの作成
再販認可 ChangeType または CPPO ChangeType を使用するお客様は、カスタム AWS Identity and Access Management(IAM) ロールを作成する必要があります。これにより、再販承認製品のライフサイクルの作成がサポートされます。
カスタム IAM ロールを作成するには
-
IAM コンソールにサインインします (https://console.aws.amazon.com/iam/
)。 -
[アクセス管理] で、[ポリシー] を選択します。
-
[Create policy] (ポリシーの作成) を選択します。
-
ステップ 1: アクセス許可を指定するには、
-
ポリシーエディタで JSON ボタンを選択し、次のポリシーを追加します。
-
[次へ] を選択します。
-
-
ステップ 2: 確認して作成する
-
ポリシーの詳細については、「ポリシー名
FullResaleAuthorizationAccess」に「」と入力し、オプションの「説明」を入力します。 -
[このポリシーで定義されている許可] を確認します。
-
タグを追加するには、タグを追加します (オプション)。
-
[Create policy] (ポリシーの作成) を選択します。
FullResaleAuthorizationAccess ポリシーを作成しました。
-
-
[Access management] (アクセス管理) で、[Roles] (ロール) を選択します。
-
[ロールの作成] を選択してください。
-
ステップ 1: 信頼されたエンティティを選択するには、
-
[信頼されたエンティティのタイプ] で、[カスタム信頼ポリシー] を選択します。
-
次のカスタム信頼ポリシーをコピーして JSON エディタに貼り付けます。
-
[次へ] を選択します。
-
-
ステップ 2: アクセス許可を追加する
-
検索バーに「
FullResaleAuthorizationAccess」と入力してください。 -
FullResaleAuthorizationAccess アクセス許可ポリシーを選択し、次へを選択します。
-
-
ステップ 3: 名前、レビュー、作成の場合、
-
ロールの詳細については、ロール名
FullResaleAuthorizationAccessとして を入力し、オプションの 説明を入力します。 -
ステップ 1: 信頼されたエンティティを選択するで、選択したポリシー名がロールにアタッチされていることを確認します。
-
ステップ 2: アクセス許可を追加するで、ポリシー名を確認します。
-
ステップ 3: タグを追加する、タグを追加する (オプション)。
-
[ロールの作成] を選択してください。
FullResaleAuthorizationAccess ロールを作成しました。
リソースのタグの管理
既存のエンティティまたは変更セットにタグを追加、一覧表示、削除できます。
リソースにタグを追加
エンティティまたは変更セットにタグを追加するには、 TagResource API アクションを使用します。
[リクエスト]
POST /TagResource HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ResourceArn": "string", "Tags": [ { "Key": "string", "Value": "string" } ... ] }
リクエストパラメータには以下が含まれます。
-
カタログ (文字列) – (必須) である必要があります
AWSMarketplace。 -
ResourceArn (文字列) – (必須) 変更セットまたはエンティティの ARN。変更セットは、Catalog API で行った変更を記述します。エンティティは、 の販売者製品AWS Marketplaceでも、プライベートマーケットプレイスでの経験でもかまいません。
-
タグ (オブジェクトの配列) – (必須) 各タグキーと値を指定するオブジェクトのリスト。許可されるオブジェクトの数: 1~50。
-
キー (文字列) – (必須) タグの名前。
-
正規表現パターン –
^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$ -
文字長 – 1~128
-
-
Value (文字列) – (必須) タグの値。
-
正規表現パターン –
^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$ -
文字長 – 0~256
-
-
[応答]
{}
リソースからタグを削除します
エンティティまたは変更セットからタグまたはタグのリストを削除するには、 UntagResource API アクションを使用します。
[リクエスト]
POST /UntagResource HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ResourceArn": "string", "TagKeys": [ "string" ... ] }
リクエストパラメータには以下が含まれます。
-
カタログ (文字列) – (必須) である必要があります
AWSMarketplace。 -
ResourceArn (文字列) – (必須) 変更セットまたはエンティティの ARN。変更セットは、Catalog API で行った変更を記述します。エンティティは、 の販売者製品AWS Marketplaceでも、プライベートマーケットプレイスでの経験でもかまいません。
-
タグ (オブジェクトの配列) – (必須) 削除されるタグのキー名のリスト。許可される文字列の数: 0~256。
[応答]
{}
リソースのすべてのタグを一覧表示する
変更セットまたはエンティティに追加され、まだ削除されていないすべてのタグを一覧表示するには、 ListTagsForResource API アクションを使用します。
[リクエスト]
POST /ListTagsForResource HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ResourceArn": "string" }
リクエストパラメータには以下が含まれます。
-
カタログ (文字列) – (必須) である必要があります
AWSMarketplace。 -
ResourceArn (文字列) - (必須) 変更セットまたはエンティティの ARN。変更セットは、Catalog API で行った変更を記述します。エンティティは、 の販売者製品AWS Marketplaceでも、プライベートマーケットプレイスでの経験でもかまいません。
[応答]
{ "ResourceArn": "string", "Tags": [ { "Key": "string", "Value": "string" } ... ] }
リソースの変更をリクエストする際のタグの管理
エンティティまたは変更セットの作成時にタグを追加できます。
例: 変更セットの作成時に変更セットにタグを追加する
以下は、販売者の製品の製品メタデータを更新するStartChangeSetリクエストの例です。このリクエストは、 ChangeSetTagsプロパティに タグを含めることで、このリクエストで作成された変更セットにタグを追加します。
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType":"UpdateInformation", "Entity": { "Identifier":"example1-abcd-1234-5ef6-7890abcdef12", "Type":"AmiProduct@1.0" }, "Details": "{\"ProductTitle\":\"My updated title\"}" } ], "ChangeSetTags": [ { "Key": "product-team", "Value": "team-xyz" } ] }
販売者製品の管理の詳細については、「 AWS Marketplace Catalog APIリファレンス」の「販売者製品の操作」を参照してください。
例: エンティティへのタグの追加と作成時の変更セット
以下は、プライベートマーケットプレイスエクスペリエンスエンティティを作成するStartChangeSetリクエストの例です。リクエストは、 プロパティと ChangeSetTagsプロパティにタグを含めることで、このリクエストで作成されたエンティティリソースEntityTagsと変更セットリソースの両方にタグを追加します。これらのタグを使用すると、ユーザーまたはロールのアクセス許可ポリシーを指定して、このリクエストが作成する変更セットの記述またはキャンセルのみを許可するか、このリクエストが作成するエンティティに対する追加の変更セットの作成のみを許可できます。詳細については、「タグのみを使用してエンティティを作成し、セットを変更するアクセス許可を付与する」を参照してください。
POST /StartChangeSet HTTP/1.1 Content-type: application/json { "Catalog": "AWSMarketplace", "ChangeSet": [ { "ChangeType": "CreateExperience", "Entity": { "Type": "Experience@1.0" }, "Details": "{\"Name\": \"ExamplePrivateMarketplace\"}", "EntityTags": [ { "Key": "product-team", "Value": "team-xyz" } ] } ], "ChangeSetTags": [ { "Key": "product-team", "Value": "team-xyz" } ] }
プライベートマーケットプレイスの管理の詳細については、 AWS Marketplace Catalog APIリファレンスの「プライベートマーケットプレイスの使用」を参照してください。
リソースのタグを管理するアクセス許可の付与
ユーザーまたはロールがすべてのエンティティまたは変更セットのタグを追加、削除、一覧表示できるようにするには、次の IAM ポリシーが必要です。
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:TagResource", "aws-marketplace:UntagResource", "aws-marketplace:ListTagsForResource" ], "Resource": "*" } ] }
リソースに特定のタグがある場合にのみ、リソースのタグを管理するアクセス許可を付与する
ユーザーまたはロールに、特定のタグを持つエンティティまたは変更セットのタグを追加、削除、一覧表示することを許可できます。次の IAM ポリシーでは、タグキーが product-team、タグ値が のエンティティリソース ("*") に対してこれらのアクションを許可しますteam-xyz。
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:TagResource", "aws-marketplace:UntagResource", "aws-marketplace:ListTagsForResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/product-team": "team-xyz" } } } ] }
タグのみを使用してエンティティを作成し、セットを変更するアクセス許可を付与する
注記
StartChangeSet アクションのリソースレベルのアクセス許可と条件コンテキストキーは、 Catalog API で使用する場合にのみサポートされます。で使用する場合、これらはサポートされませんAWS Marketplace 管理ポータル
エンティティまたは変更セットの作成時にタグ付けを適用できます。タグキー一致とタグ値一致を指定する条件を使用して、 StartChangeSetおよび TagResourceアクションを許可するにはproduct-team、次のポリシーを追加しますteam-xyz。このポリシー条件は、新しく作成されたエンティティのタグと、作成リクエストの結果として新しく作成された変更セットのタグの両方と一致する必要があります。作成時にエンティティにタグ付けする例については、「」を参照してください例: エンティティへのタグの追加と作成時の変更セット。
既存のエンティティの場合、このポリシーはそれらのエンティティへの変更をリクエストするときに、変更セットのタグ付けも強制します。これには、既存のエンティティにこの既存のタグがあることも必要です。これは、ポリシー条件が既存のエンティティのタグと、変更リクエストの結果として新しく作成された変更セットの両方と一致する必要があるためです。変更リクエストにタグを追加する例については、「」を参照してください例: 変更セットの作成時に変更セットにタグを追加する。
{ "Statement": [ { "Effect": "Allow", "Action": [ "aws-marketplace:StartChangeSet", "aws-marketplace:TagResource" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/product-team": "team-xyz" } } } ] }