

AWS Marketplace API リファレンスが再構築されました。サポートされている API オペレーションの詳細については、[AWS Marketplace API リファレンス](https://docs.aws.amazon.com/marketplace/latest/APIReference/Welcome.html)を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS Marketplace Catalog API のアクセスコントロール
<a name="catalog-api-access-control"></a>

を使用して[、 で販売者製品を AWS Marketplace](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/seller-products.html) AWS Marketplace Catalog API 管理したり、[プライベートマーケットプレイスで エクスペリエンス](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/private-marketplace.html)を管理したりできます。ただし、まず、ユーザーまたはロールが呼び出す API 機能にアクセスできることを確認します。

 AWS Identity and Access Management (IAM) を使用してユーザーとロールを作成し、エンドユーザーに制限されたアクセス許可を付与するポリシーを割り当てます。ポリシーは、ユーザーまたはロールが を通じてリソースに対して実行できるアクションを定義します AWS Marketplace Catalog API。

たとえば、エンジニアリング、マーケティング、料金などのロールを定義できます。次に、組織内のユーザーをエンジニアリングロールに追加できます。そのロールでは、販売者製品の新しいバージョンを発行する変更リクエストを開始するアクセス許可が付与される場合があります。ただし、エンジニアリングロールでは、ユーザーがすべての変更セットを一覧表示することはできません。

**注記**  
で製品を販売するには AWS Marketplace、 を販売者アカウントとして設定 AWS アカウント する必要があります。 AWS Marketplace 販売者になる方法の詳細については、[「 販売者ガイド」の「販売者としての開始方法](https://docs.aws.amazon.com/marketplace/latest/userguide/user-guide-for-sellers.html)」を参照してください。 *AWS Marketplace *

 AWS 管理ポリシーを使用するか、独自の IAM ポリシーを作成して、 AWS 管理ポリシーで使用できるものよりも細かく制御できます。これらのアプローチの詳細については、以下のトピックを参照してください。

**Topics**
+ [AWS 管理ポリシーを使用したアクションの許可](#allowing-actions-with-managed-policies)
+ [すべてのリソースに対するアクションの許可](#allowing-actions-on-all-resources)
+ [特定のリソースに対するアクションの許可](#allowing-actions-on-specific-resources)
+ [特定のChangeType条件キーを使用したアクションの許可](#allowing-actions-with-specific-changetype-condition-key)
+ [特定のaws:ResourceTag条件キーを使用したアクションの許可](#allowing-actions-with-specific-resource-tag-condition-key)
+ [カスタム IAM ロールの作成](#create-custom-role)
+ [リソースのタグの管理](#managing-tags-on-resources)
+ [リソースの変更をリクエストする際のタグの管理](#managing-tags-when-requesting-changes-to-resources)
+ [リソースのタグを管理するアクセス許可の付与](#grant-permission-to-mange-tags-on-resources)
+ [リソースに特定のタグがある場合にのみ、リソースのタグを管理するアクセス許可を付与する](#grant-permission-to-manage-tags-resources-specific-tags)
+ [タグのみを使用してエンティティを作成し、セットを変更するアクセス許可を付与する](#grant-permission-create-entities-change-sets-tags)

## AWS 管理ポリシーを使用したアクションの許可
<a name="allowing-actions-with-managed-policies"></a>

によって管理されるポリシーを使用して AWS 、ユーザーまたはロールにアクセス許可を付与できます。

販売する製品を操作するには AWS Marketplace、IAM `AWSMarketplaceSellerFullAccess` 管理ポリシーを使用できます。このポリシーには、他のアクセス許可 AWS Marketplace Catalog API に加えて、 へのフルアクセスがあります。`AWSMarketplaceSellerProductsReadOnly` ポリシーを使用して Catalog API の読み取り専用アクセスを許可できます。詳細については、「 Seller Guide」の[「Controlling access to AWS Marketplace 管理ポータル](https://docs.aws.amazon.com/marketplace/latest/userguide/marketplace-management-portal-user-access.html)」、[「 Policies and permissions for AWS Marketplace Sellers](https://docs.aws.amazon.com/marketplace/latest/userguide/detailed-management-portal-permissions.html)」、[「AWS managed policies for AWS Marketplace Sellers](https://docs.aws.amazon.com/marketplace/latest/userguide/security-iam-awsmanpol.html)」を参照してください。 *AWS Marketplace *

プライベートマーケットプレイスを管理するには、アカウントまたは AWS 組織のプライベートマーケットプレイスを作成および編集するためのフルアクセス権を持つ IAM `AWSPrivateMarketplaceAdminFullAccess` 管理ポリシーを使用できます。詳細については、「 購入者ガイド」の[AWS Marketplace 「サブスクリプションへのアクセスの制御](https://docs.aws.amazon.com/marketplace/latest/buyerguide/buyer-iam-users-groups-policies.html)」、[「プライベートマーケットプレイス管理者の作成](https://docs.aws.amazon.com/marketplace/latest/buyerguide/it-administrator.html)」、および[AWS Marketplace 「購入者向けの AWS 管理ポリシー](https://docs.aws.amazon.com/marketplace/latest/buyerguide/buyer-security-iam-awsmanpol.html)」を参照してください。 *AWS Marketplace *

または、独自の IAM ポリシーを作成して、 AWS マネージドポリシーで利用可能なものよりも細かく制御することもできます。以下のトピックを使用して、独自の IAM ポリシーを作成します。

## すべてのリソースに対するアクションの許可
<a name="allowing-actions-on-all-resources"></a>

リソースは、アクションが実行できるオブジェクトです。すべてのアクションで、すべてのリソースタイプを指定できるわけではありません。一部のリソースタイプは、特定のアクションでのみ動作します。詳細については、*「サービス認可リファレンス*[」の AWS Marketplace 「カタログのアクション、リソース、および条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsmarketplacecatalog.html)」を参照してください。

Catalog API には 2 つのリソースタイプがあります。
+ **エンティティ** – エンティティは、 [の販売者製品 AWS Marketplace](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/seller-products.html)であるか[、プライベートマーケットプレイスでの経験](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/private-marketplace.html)です。
+ **ChangeSet** – Catalog API を使用してエンティティを変更するたびに、変更セットが返されます。変更セットは、リクエストされた変更とそのステータスを記述します。ステータスが `PREPARING`状態の場合、変更セットをキャンセルできます。

ユーザーまたはロールに 内のすべてのエンティティの変更を許可するには AWS アカウント、次の IAM ポリシーを追加します。このポリシーでは、ユーザーまたはロールはすべてのリソース () で `StartChangeSet`アクションを使用できます`"*"`。

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "aws-marketplace:StartChangeSet"
      ],
      "Resource": "*"
    }
  ]
}
```

Catalog API で使用できるすべてのアクションの詳細については、*「サービス認可リファレンス*」の[AWS Marketplace 「Catalog のアクション、リソース、および条件キー](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsmarketplacecatalog.html)」を参照してください。

## 特定のリソースに対するアクションの許可
<a name="allowing-actions-on-specific-resources"></a>

**注記**  
`StartChangeSet` アクションのリソースレベルのアクセス許可と条件コンテキストキーは、Catalog API で使用する場合にのみサポートされます。で使用する場合、これらはサポートされません[AWS Marketplace 管理ポータル](https://aws.amazon.com/marketplace/management)。

すべてのリソースへの変更を許可する代わりに、リソースレベルのアクセス許可を使用して特定のリソースへの変更を許可できます。

たとえば、すべての販売者製品 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条件キーを使用したアクションの許可
<a name="allowing-actions-with-specific-changetype-condition-key"></a>

**注記**  
`StartChangeSet` アクションのリソースレベルのアクセス許可と条件コンテキストキーは、Catalog API で使用する場合にのみサポートされます。で使用する場合、これらはサポートされません[AWS Marketplace 管理ポータル](https://aws.amazon.com/marketplace/management)。

Catalog API アクション`StartChangeSet`には、いくつかの異なる変更タイプがあります。特定の変更タイプにのみアクセスを許可できます。

たとえば、製品タイトルなどの販売者の製品のメタデータへの変更のみを許可し、新しい製品バージョンの追加は許可しない場合があります。この例では、変更タイプ`UpdateInformation`により、タイトルを含む販売者の製品のメタデータを変更できます。さまざまな変更タイプの詳細については、 *AWS Marketplace Catalog API リファレンス*の[「販売者製品](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/seller-products.html)の使用」および[「プライベートマーケットプレイスの使用](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/private-marketplace.html)」を参照してください。

アクションを 1 つ以上の変更タイプに制限するには、条件キー`ChangeType`で を指定します。次の IAM ポリシーの例では、 条件演算子は、 が `ChangeType`に一致する場合にのみアクションを許可するように`StringEquals`指定します`UpdateInformation`。条件キーの詳細については、*AWS Identity and Access Management ユーザーガイド*の[「条件演算子](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html)」を参照してください。

**注記**  
新しい変更セットを作成するアクションで詳細なリソースレベルのアクセス許可を指定するには、リソースのリストに `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条件キーを使用したアクションの許可
<a name="allowing-actions-with-specific-resource-tag-condition-key"></a>

**注記**  
`StartChangeSet` アクションのリソースレベルのアクセス許可と条件コンテキストキーは、Catalog API で使用する場合にのみサポートされます。で使用する場合、これらはサポートされません[AWS Marketplace 管理ポータル](https://aws.amazon.com/marketplace/management)。

ポリシーを更新し続けたり、エンティティ 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`アクションも含める必要があります。これは、ポリシー条件が、エンティティのタグと、変更リクエストの結果として新しく作成された変更セットのタグの両方と一致する必要があるためです。したがって、ユーザーまたはロールには、新しく作成された変更セットにタグを付けるアクセス許可も必要です。変更セットの開始と変更セットのタグ付けの例については、「」を参照してください[例: エンティティへのタグの追加と作成時の変更セット](#example-adding-tags-entity-creation)。

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "aws-marketplace:StartChangeSet",
        "aws-marketplace:TagResource"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/product-team": "team-xyz"
        }
      }
    }
  ]
}
```

## カスタム IAM ロールの作成
<a name="create-custom-role"></a>

再販認可 ChangeType または CPPO ChangeType を使用するお客様は、カスタム AWS Identity and Access Management (IAM) ロールを作成する必要があります。これにより、再販承認製品のライフサイクルの作成がサポートされます。

**カスタム IAM ロールを作成するには**

1. IAM コンソールにサインインします ([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/))。

1. **[アクセス管理]** で、**[ポリシー]** を選択します。

1. [**Create policy**] (ポリシーの作成) を選択します。

1. **ステップ 1: アクセス許可を指定する**には、

   1. **ポリシーエディタ**で **JSON** ボタンを選択し、次のポリシーを追加します。

------
#### [ JSON ]

****  

      ```
      {
      "Version":"2012-10-17",		 	 	 
      	"Statement": [
      		{
      			"Sid": "AllowResaleAuthorizationShareActionsRAMCreate",
      			"Effect": "Allow",
      			"Action": [
      				"ram:CreateResourceShare",
      				"ram:AssociateResourceShare"
      			],
      			"Resource": [
      			    "arn:aws:ram:*:*:*"
      			],
      			"Condition": {
      			    "ArnLikeIfExists": {
      					"ram:ResourceArn": "arn:aws:aws-marketplace:*:*:AWSMarketplace/ResaleAuthorization/*"
      				},
      				"StringEqualsIfExists": {
      					"ram:RequestedResourceType": "aws-marketplace:Entity"
      				}
      			}
      		},
      		{
      			"Sid": "AllowResaleAuthorizationShareActionsRAMAccept",
      			"Effect": "Allow",
      			"Action": [
      				"ram:AcceptResourceShareInvitation",
      				"ram:GetResourceShareInvitations",
      				"ram:GetResourcePolicies",
      				"ram:GetResourceShareAssociations"
      			],
      			"Resource": [
      		    	"arn:aws:ram:*:*:*"
      			]
      		},
      		{
      			"Sid": "AllowResaleAuthorizationShareActionsMarketplace",
      			"Effect": "Allow",
      			"Action": [
      				"aws-marketplace:PutResourcePolicy",
      				"aws-marketplace:GetResourcePolicy",
      				"aws-marketplace:DescribeEntity"
      			],
      			"Resource": "arn:aws:aws-marketplace:*:*:AWSMarketplace/ResaleAuthorization/*"
      		}
      	]
      }
      ```

------

   1. [**次へ**] を選択します。

1. **ステップ 2: 確認して作成する** 

   1. **ポリシーの詳細については**、**「ポリシー名****FullResaleAuthorizationAccess**」に「」と入力し、オプションの**「説明**」を入力します。

   1. **[このポリシーで定義されている許可]** を確認します。

   1. **タグを追加する**には、タグを追加します (オプション）。

   1. [**Create policy**] (ポリシーの作成) を選択します。

      FullResaleAuthorizationAccess ポリシーを作成しました。

1. **[Access management]** (アクセス管理) で、**[Roles]** (ロール) を選択します。

1. [**ロールの作成**] を選択してください。

1. **ステップ 1: 信頼されたエンティティを選択する**には、

   1. **[信頼されたエンティティのタイプ]** で、**[カスタム信頼ポリシー]** を選択します。

   1. 次のカスタム信頼ポリシーをコピーして JSON エディタに貼り付けます。

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Principal": {
                      "Service": "resale-authorization.marketplace.amazonaws.com"
                  },
                  "Action": "sts:AssumeRole"
              }
          ]
       }
      ```

------

   1. [**次へ**] を選択します。

1. **ステップ 2: アクセス許可を追加する** 

   1. 検索バーに「**FullResaleAuthorizationAccess**」と入力してください。

   1. **FullResaleAuthorizationAccess** アクセス許可ポリシーを選択し、次**へ**を選択します。

1. **ステップ 3: 名前、レビュー、作成**の場合、

1. **ロールの詳細については**、**ロール名****FullResaleAuthorizationAccess**として を入力し、オプションの **説明**を入力します。

1. **ステップ 1: 信頼されたエンティティを選択する**で、選択したポリシー名がロールにアタッチされていることを確認します。

1. **ステップ 2: アクセス許可を追加する**で、**ポリシー名**を確認します。

1. **ステップ 3: タグを追加する**、タグを追加する (オプション）。

1. [**ロールの作成**] を選択してください。

   FullResaleAuthorizationAccess ロールを作成しました。

## リソースのタグの管理
<a name="managing-tags-on-resources"></a>

既存のエンティティまたは変更セットにタグを追加、一覧表示、削除できます。

### リソースにタグを追加
<a name="add-tags-to-resources"></a>

エンティティまたは変更セットにタグを追加するには、 `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](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/seller-products.html)でも、[プライベートマーケットプレイスでの経験でも](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/private-marketplace.html)かまいません。
+ タグ (オブジェクトの配列) – (必須) 各タグキーと値を指定するオブジェクトのリスト。許可されるオブジェクトの数: 1～50。
  + キー (文字列) – (必須) タグの名前。
    + 正規表現パターン – `^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$`
    + 文字長 – 1～128
  + Value (文字列) – (必須) タグの値。
    + 正規表現パターン – `^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$`
    + 文字長 – 0～256

**[応答]**

```
{}
```

### リソースからタグを削除します
<a name="remove-tags-from-resources"></a>

エンティティまたは変更セットからタグまたはタグのリストを削除するには、 `UntagResource` API アクションを使用します。

**[リクエスト]**

```
POST /UntagResource HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ResourceArn": "string",
  "TagKeys": [
    "string"
    ...
  ]
}
```

リクエストパラメータには以下が含まれます。
+ カタログ (文字列) – (必須) である必要があります`AWSMarketplace`。
+ ResourceArn (文字列) – (必須) 変更セットまたはエンティティの ARN。変更セットは、Catalog API で行った変更を記述します。エンティティは、 [の販売者製品 AWS Marketplace](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/seller-products.html)でも、[プライベートマーケットプレイスでの経験でも](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/private-marketplace.html)かまいません。
+ タグ (オブジェクトの配列) – (必須) 削除されるタグのキー名のリスト。許可される文字列の数: 0～256。

**[応答]**

```
{}
```

### リソースのすべてのタグを一覧表示する
<a name="list-all-tags-on-resource"></a>

変更セットまたはエンティティに追加され、まだ削除されていないすべてのタグを一覧表示するには、 `ListTagsForResource` API アクションを使用します。

**[リクエスト]**

```
POST /ListTagsForResource HTTP/1.1
Content-type: application/json

{
  "Catalog": "AWSMarketplace",
  "ResourceArn": "string"
}
```

リクエストパラメータには以下が含まれます。
+ カタログ (文字列) – (必須) である必要があります`AWSMarketplace`。
+ ResourceArn (文字列) - (必須) 変更セットまたはエンティティの ARN。変更セットは、Catalog API で行った変更を記述します。エンティティは、 [の販売者製品 AWS Marketplace](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/seller-products.html)でも、[プライベートマーケットプレイスでの経験でも](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/private-marketplace.html)かまいません。

**[応答]**

```
{
  "ResourceArn": "string",
  "Tags": [
    {
      "Key": "string",
      "Value": "string"
    }
    ...
  ]
}
```

## リソースの変更をリクエストする際のタグの管理
<a name="managing-tags-when-requesting-changes-to-resources"></a>

エンティティまたは変更セットの作成時にタグを追加できます。

### 例: 変更セットの作成時に変更セットにタグを追加する
<a name="example-adding-tags-creating-change-set"></a>

以下は、販売者の製品の製品メタデータを更新する`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 リファレンス*[」の「販売者製品の操作](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/seller-products.html)」を参照してください。

### 例: エンティティへのタグの追加と作成時の変更セット
<a name="example-adding-tags-entity-creation"></a>

以下は、プライベートマーケットプレイスエクスペリエンスエンティティを作成する`StartChangeSet`リクエストの例です。リクエストは、 プロパティと `ChangeSetTags`プロパティにタグを含めることで、このリクエストで作成されたエンティティリソース`EntityTags`と変更セットリソースの両方にタグを追加します。これらのタグを使用すると、ユーザーまたはロールのアクセス許可ポリシーを指定して、このリクエストが作成する変更セットの記述またはキャンセルのみを許可するか、このリクエストが作成するエンティティに対する追加の変更セットの作成のみを許可できます。詳細については、「[タグのみを使用してエンティティを作成し、セットを変更するアクセス許可を付与する](#grant-permission-create-entities-change-sets-tags)」を参照してください。

```
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 リファレンス*の[「プライベートマーケットプレイスの使用](https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/private-marketplace.html)」を参照してください。

## リソースのタグを管理するアクセス許可の付与
<a name="grant-permission-to-mange-tags-on-resources"></a>

ユーザーまたはロールがすべてのエンティティまたは変更セットのタグを追加、削除、一覧表示できるようにするには、次の IAM ポリシーが必要です。

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "aws-marketplace:TagResource",
        "aws-marketplace:UntagResource",
        "aws-marketplace:ListTagsForResource"
      ],
      "Resource": "*"
    }
  ]
}
```

## リソースに特定のタグがある場合にのみ、リソースのタグを管理するアクセス許可を付与する
<a name="grant-permission-to-manage-tags-resources-specific-tags"></a>

ユーザーまたはロールに、特定のタグを持つエンティティまたは変更セットのタグを追加、削除、一覧表示することを許可できます。次の 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"
        }
      }
    }
  ]
}
```

## タグのみを使用してエンティティを作成し、セットを変更するアクセス許可を付与する
<a name="grant-permission-create-entities-change-sets-tags"></a>

**注記**  
`StartChangeSet` アクションのリソースレベルのアクセス許可と条件コンテキストキーは、 Catalog API で使用する場合にのみサポートされます。で使用する場合、これらはサポートされません[AWS Marketplace 管理ポータル](https://aws.amazon.com/marketplace/management)。

エンティティまたは変更セットの作成時にタグ付けを適用できます。タグキー一致とタグ値一致を指定する条件を使用して、 `StartChangeSet`および `TagResource`アクションを許可するには`product-team`、次のポリシーを追加します`team-xyz`。このポリシー条件は、新しく作成されたエンティティのタグと、作成リクエストの結果として新しく作成された変更セットのタグの両方と一致する必要があります。作成時にエンティティにタグ付けする例については、「」を参照してください[例: エンティティへのタグの追加と作成時の変更セット](#example-adding-tags-entity-creation)。

既存のエンティティの場合、このポリシーはそれらのエンティティへの変更をリクエストするときに、変更セットのタグ付けも強制します。これには、既存のエンティティにこの既存のタグがあることも必要です。これは、ポリシー条件が既存のエンティティのタグと、変更リクエストの結果として新しく作成された変更セットの両方と一致する必要があるためです。変更リクエストにタグを追加する例については、「」を参照してください[例: 変更セットの作成時に変更セットにタグを追加する](#example-adding-tags-creating-change-set)。

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "aws-marketplace:StartChangeSet",
        "aws-marketplace:TagResource"
      ],
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:ResourceTag/product-team": "team-xyz"
        }
      }
    }
  ]
}
```