Authoring and Management APIまたはDeploy API用のJSONウェブトークンを作成します

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Sitecoreのオーサリング・マネジメントGraphQL APIやデプロイメントREST APIで操作を実行するには、JSON Web Token(JWT)形式の認証トークンを取得し、APIへのすべての呼び出しに含めてください。これらのAPIはOAuth認証フレームワークを使用しています。

!注また、Experience Edge API用のJSONウェブトークンを作成することもできます。

JSONウェブトークンを作成してください

!注始める前に

自動化クライアントを作成すると、クライアントIDとクライアントシークレットが生成されます。JWTを作成する際にはクライアントIDとクライアントシークレットを使用します。

どのタイプの自動化クライアントを作成するかを選ぶ際は、最小権限の原則に従ってください。特定の環境を対象とした自動化クライアントを使い、リークされたクライアントの秘密が他の環境や組織レベルのAPIにアクセスできないようにしましょう。すべての環境にまたがるアクセスが必要な場合や、新しい環境の作成など組織レベルの操作が必要な場合に、組織自動化クライアントを活用してください。

JSONウェブトークン(JWT)を要求するには、JSONまたはURLエンコード形式のいずれかで以下のHTTPリクエストを行います。

POST https://auth.sitecorecloud.io/oauth/token

リクエスト文には以下の必要な属性を記載する必要があります:

属性

種類

概要

価値

聴衆

ストリング

JWTが対象とするAPI群。

https://api.sitecorecloud.io

grant_type

ストリング

JWTを得るために用いられた方法です。

client_credentials

client_id

ストリング

クライアントID。この値が分からない場合は、まず自動化クライアントを作成しましょう。

あなたのクライアントID。例

...

client_secret

ストリング

クライアントの秘密だ。この値が分からない場合は、まず自動化クライアントを作成しましょう。

あなたのクライアントの秘密です。例

...

JSON

curl -X POST 'https://auth.sitecorecloud.io/oauth/token' \ -H 'Content-Type: application/json' \ --data-raw '{ "audience": "https://api.sitecorecloud.io", "grant_type": "client_credentials", "client_id": "<YOUR_CLIENT_ID>", "client_secret": "<YOUR_CLIENT_SECRET>" }'

URLエンコード

curl -X POST 'https://auth.sitecorecloud.io/oauth/token' \ -H 'content-type: application/x-www-form-urlencoded' \ --data-urlencode 'audience=https://api.sitecorecloud.io' \ --data-urlencode 'grant_type=client_credentials' \ --data-urlencode 'client_id=<YOUR_CLIENT_ID>' \ --data-urlencode 'client_secret=<YOUR_CLIENT_SECRET>'

以下はその回答例です:

{ "access_token": "eyJhbG...", "scope": "...", "expires_in": 86400, "token_type": "Bearer" }

回答では:

  • access_token はJSONのウェブトークンです。JWTを使ってAuthoring and Management GraphQL APIや Deploy REST APIへのリクエストを承認できます。
  • scope JWTがアクセスを提供するリソースを定義します。リソースは作成した資格の種類によって異なります。
  • expires_in JWTの妥当性を秒単位で定義します。JWTは通常24時間で有効期限が切れますのでご注意ください。その時間が経つとトークンは無効となり、新しいトークンを申請する必要があります。
  • token_type はBearerのように作成されるトークンの種類を定義します。

セキュリティ上の考慮事項

Sitecore発行のJWTはRS256で署名されています。JWTを使用する前に、JWTライブラリを使ってSitecoreのJSON Web Key Set(JWKS)URIと比較して検証してください:

https://auth.sitecorecloud.io/.well-known/jwks.json

JWKS URIは署名の検証に使われる公開鍵を提供します。JWTライブラリを設定して、期待される発行者(https://auth.sitecorecloud.io/)とオーディエンス(https://api.sitecorecloud.io)を確認し、期限確認が無効化されていないことを確認してください。どのカードが自動的に検証されているか、図書館のドキュメントを確認してください。自分の認証情報申請から直接取得していないJWTは絶対に使わないでください。

この記事を改善するための提案がある場合は、 お知らせください!