メインコンテンツへスキップ
アプリケーションのクライアントシークレットは、またはを使って変更できます。クライアントシークレットをローテーションするときは、新しい値で認可されたアプリケーションを更新する必要があります。
クライアントシークレットをパブリッククライアントアプリケーションに保管してはいけません。詳細については、「機密アプリケーションとパブリックアプリケーション
新しいシークレットは、ローテーション中に最大で30秒遅れます。ダウンタイムを最小限に抑えるために、新しいクライアントシークレットを以前のシークレットのフォールバックとしてアプリケーションのコードかシステム構成に保管することをお勧めします。そうすれば、クライアントアプリケーションの要求に古いシークレットで対処できなかった場合に、新しいシークレットを使用できます。シークレットは、不要になるまでリスト(または類似の構造)に保管できます。古いシークレットが確実に不要になった時点で、アプリのコードからその値を削除します。

Dashboardの使用

  1. Auth0 Dashboardで、[Applications(アプリケーション)]>[Applications(アプリケーション)]に移動し、アプリケーションの名前を選択して表示します。
    Dashboardのアプリケーションリスト
  2. [Settings(設定)] ページを下にスクロールして、[Danger Zone(危険ゾーン)] を見つけて、[Rotate(ローテーション)] を選択して確定します。
  3. ページの上部までスクロールし、[Credentials(資格情報)] タブに切り替えます。
  4. [Client Secret(クライアントシークレット)] の新しいシークレットを確認し、目のアイコンを選択します。
    Dashboard アプリケーション アプリケーション設定タブ 基本情報
  5. 新しい値で、認可されたアプリケーションを更新します。

Management APIの使用

  1. Management APIクライアントシークレットのローテーションエンドポイントを呼び出します。YOUR_CLIENT_IDMGMT_API_ACCESS_TOKENのプレースホルダーの値を、それぞれクライアントIDとManagement APIのアクセストークンに置き換えてください。
    curl --request POST \
    --url 'https://{yourDomain}/api/v2/clients/%7ByourClientId%7D/rotate-secret' \
    --header 'authorization: Bearer {yourMgmtApiAccessToken}'
    
    説明
    YOUR_CLIENT_ID更新するアプリケーションのID。
    MGMT_API_ACCESS_TOKENスコープupdate:client_keysを持つManagement APIのアクセストークン
  2. 新しい値で、認可されたアプリケーションを更新します。

カスタムのクライアントシークレットの設定

ローテーションを要求して自動的にシークレットを生成する代わりに、Management APIクライアント更新エンドポイントを使用して、手動でクライアントシークレットを設定できます。アプリケーションは、実際のローテーションより前にフォールバックとして将来のシークレットで構成されます。
{
    curl --request PATCH \
    --url https://{TenantDomain}/api/v2/clients/{ClientID} \
    --header 'Authorization: Bearer {AccessToken}' \
    --header 'Content-Type: application/json' \
    --data '{
        "client_secret": "{CustomClientSecret}"
        }'
}

もっと詳しく

I