この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
カスタム API は、カスタムスコープを 1 つだけ含むセキュリティスキームによって保護する必要があります。カスタム API にアクセスするには、クライアントは必要なスコープのトークンを取得する必要があります。
エンドポイントを保護し、エンドポイントに許可されたリクエストを行うには、次の手順を実行します。
エンドポイントは、API コントラクトのセキュリティスキームに関連付けられている必要があります。
ShopperToken: Shopper API とストアフロントのユースケース向け。Shopper Login and API Access を使用してトークンを取得します。AmOAuth2: SCAPI Admin API をバックオフィスアプリで使用する場合。Account Manager を使用してトークンを取得します。アソシエーションは操作ごとまたはグローバルのいずれかで、操作スキームが優先されます。このスキームは、非カスタム B2C Commerce API (SCAPI) で使用されるスキームと同じです。
スキームでは、カスタムスコープを 1 つだけ設定する必要があります。
コントラクトで使用されるスキームは、次のように components セクションで定義する必要があります。
1components:
2 securitySchemes:
3 ShopperToken: {}
4 AmOAuth2:
5 type: oauth2
6
7# 👇 A global scheme applies to all operations in this file.
8security:
9 - AmOAuth2: ["c_loyalty_rw"]
10
11paths:
12 /customer:
13 get:
14 operationId: getLoyaltyInfo
15 parameters:
16 - in: query
17 name: siteId
18 required: true
19 schema:
20 type: string
21 minLength: 1
22 responses:
23 200:
24 description: OK
25 # 👇 An operation scheme applies only to this operation and takes precedence over the global scheme.
26 security:
27 - ShopperToken: ["c_loyalty"]カスタムスコープは、次の要件を満たしている必要があります。
c_ で始まる必要があります。正しいスキームまたはスコープの割り当てがないエンドポイントは登録されません。
登録エラーを確認するには、Log Center で CustomApiRegistry を含むカテゴリのメッセージを検索します。
ShopperLogin のスコープは、SLAS Admin UI でクライアントに割り当てることができます。以下に例を示します。

SLAS トークンを取得するには、Shopper Login の概要の手順に従います。
AmOAuth2 のカスタムスコープは、Account Manager でクライアントに割り当てることができます。以下に例を示します。

Account Manager トークンを取得するには、Admin API の認可のガイドの手順に従います。
認可されていないリクエストは 401 Unauthorized レスポンスを受け取ります。
エンドポイントの登録では、セキュリティスキームの完全な定義は必要ありませんが、ドキュメント、テスト、コードスタブ、およびモックリクエストを作成できる完全で有効なスキームがあると便利です。次のコードは、完全な例を示しています。
1components:
2 securitySchemes:
3 ShopperToken:
4 type: oauth2
5 flows:
6 authorizationCode:
7 authorizationUrl: https://my-shortcode.api.commercecloud.salesforce.com/shopper/auth/v1/organizations/{organizationId}/oauth2/authorize
8 tokenUrl: https://my-shortcode.api.commercecloud.salesforce.com/shopper/auth/v1/organizations/{organizationId}/oauth2/token
9 scopes:
10 c_my-scopes: description of my-scopes
11 clientCredentials:
12 tokenUrl: https://my-shortcode.api.commercecloud.salesforce.com/shopper/auth/v1/organizations/{organizationId}/oauth2/token
13 scopes:
14 c_my-scopes: description of my-scopes
15 AmOAuth2:
16 type: oauth2
17 flows:
18 authorizationCode:
19 authorizationUrl: https://account.demandware.com/dwsso/oauth2/authorize
20 tokenUrl: https://account.demandware.com/dwsso/oauth2/access_token
21 scopes:
22 c_my-scopes: description of my-scopes
23 clientCredentials:
24 tokenUrl: https://account.demandware.com/dwsso/oauth2/access_token
25 scopes:
26 c_my-scopes: description of my-scopes