

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

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

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

Discovery API は、認証と認可に AWS Identity and Access Management (IAM) を使用します。 AWS 顧客は、適切な IAM アクセス許可を設定することで Discovery API を呼び出すことができます。

Discovery API オペレーションを呼び出すには、ユーザーに次のアクセス許可が必要です。
+ `GetListing` – 出品に関する情報を取得するアクセス許可を付与します。
+ `GetProduct` – 製品に関する情報を取得するアクセス許可を付与します。
+ `GetOffer` – オファーに関する情報を取得するアクセス許可を付与します。
+ `GetOfferTerms` – オファーの条件を取得するアクセス許可を付与します。
+ `GetOfferSet` – オファーセットに関する情報を取得するアクセス許可を付与します。
+ `ListPurchaseOptions` – 購入者が利用できる購入オプションを一覧表示するアクセス許可を付与します。
+ `ListFulfillmentOptions` – 製品のフルフィルメントオプションを一覧表示するアクセス許可を付与します。
+ `SearchListings` – 製品リストを検索するアクセス許可を付与します。
+ `SearchFacets` – リストをフィルタリングするためのファセット値を取得するアクセス許可を付与します。

## IAM アクセス許可
<a name="discovery-iam-permissions"></a>

Discovery API オペレーションを呼び出すには、IAM プリンシパル (ユーザーまたはロール) に適切な`aws-marketplace`アクセス許可が必要です。Discovery API はリソースレベルのアクセス許可をサポートしているため、IAM ポリシー内の特定のリソースタイプへのアクセスをスコープできます。

次の IAM ポリシーは、リソースレベルのスコープを指定して、すべての Discovery API オペレーションへのアクセスを許可します。

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "aws-marketplace:GetListing",
                "aws-marketplace:GetProduct",
                "aws-marketplace:GetOffer",
                "aws-marketplace:GetOfferTerms",
                "aws-marketplace:GetOfferSet",
                "aws-marketplace:ListPurchaseOptions",
                "aws-marketplace:ListFulfillmentOptions",
                "aws-marketplace:SearchFacets",
                "aws-marketplace:SearchListings"
            ],
            "Resource": [
                "arn:aws:aws-marketplace:::catalog/<catalog-name>/product/*",
                "arn:aws:aws-marketplace:::catalog/<catalog-name>/listing/*",
                "arn:aws:aws-marketplace:::catalog/<catalog-name>/offer/*",
                "arn:aws:aws-marketplace:::catalog/<catalog-name>/offerSet/*",
                "arn:aws:aws-marketplace:::catalog/<catalog-name>/purchaseOption/*"
            ]
        }
    ]
}
```

を適切なカタログ識別子 ( など`AWSMarketplace`) `<catalog-name>`に置き換えます。

### リソース ARN 形式
<a name="discovery-resource-arn-formats"></a>

次の表は、Discovery API オペレーションで使用されるリソースタイプとその ARN 形式を示しています。


| リソースタイプ | ARN 形式 | 用途: | 
| --- | --- | --- | 
| 製品 | arn:aws:aws-marketplace:::catalog/{{catalog-name}}/product/{{product-id}} | GetProduct、ListFulfillmentOptions | 
| 出品 | arn:aws:aws-marketplace:::catalog/{{catalog-name}}/listing/{{listing-id}} | GetListing、SearchListings、SearchFacets | 
| オファー | arn:aws:aws-marketplace:::catalog/{{catalog-name}}/offer/{{offer-id}} | GetOffer、GetOfferTerms | 
| オファーセット | arn:aws:aws-marketplace:::catalog/{{catalog-name}}/offerSet/{{offerSet-id}} | GetOfferSet | 
| 購入オプション | arn:aws:aws-marketplace:::catalog/{{catalog-name}}/purchaseOption/{{purchaseOption-id}} | ListPurchaseOptions | 

### 特定のリソースへのオペレーションのスコープ
<a name="discovery-scoping-get-operations"></a>

Get オペレーション (GetListing、GetProduct、GetOffer、GetOfferTerms、GetOfferSet) および ListFulfillmentOptions オペレーションでは、ワイルドカードを使用する代わりに、特定のリソース IDs へのアクセスをスコープダウンできます。たとえば、1 つのリストへのアクセスを制限するには:

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "aws-marketplace:GetListing",
            "Resource": "arn:aws:aws-marketplace:::catalog/AWSMarketplace/listing/{{listing-id}}"
        }
    ]
}
```

このパターンは、Get オペレーションと ListFulfillmentOptions で機能します。リソースタイプと ID を適宜置き換えます。
+ `arn:aws:aws-marketplace:::catalog/{{catalog-name}}/product/{{product-id}}`
+ `arn:aws:aws-marketplace:::catalog/{{catalog-name}}/listing/{{listing-id}}`
+ `arn:aws:aws-marketplace:::catalog/{{catalog-name}}/offer/{{offer-id}}`
+ `arn:aws:aws-marketplace:::catalog/{{catalog-name}}/offerSet/{{offerSet-id}}`

SearchListings、SearchFacets、および ListPurchaseOptions オペレーションは、複数の項目にまたがって動作するため、単一のリソースへのスコープ設定をサポートしていません。これらのオペレーションには、次のワイルドカード ARN パターンを使用します。
+ SearchListings と SearchFacets の場合: `arn:aws:aws-marketplace:::catalog/{{catalog-name}}/listing/*`
+ ListPurchaseOptions の場合: `arn:aws:aws-marketplace:::catalog/{{catalog-name}}/purchaseOption/*`

## サービスリンクロール
<a name="discovery-service-linked-roles"></a>

Discovery API は、サービスにリンクされたロールを使用しません。すべてのアクセスは、標準の IAM ポリシーによって制御されます。

## クロスアカウントアクセス
<a name="discovery-cross-account-access"></a>

IAM ロールを使用して、Discovery API へのクロスアカウントアクセスを許可できます。適切な Discovery API アクセス許可を持つロールをターゲットアカウントに作成し、ソースアカウントからロールを引き受けます。