> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-docs-event-stream-action-templates.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 認可拡張機能

> Authorization Extension（認可拡張機能）を使用して、ランタイムでユーザー認可の動作を制御する方法について説明します。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  [Authorization Core（認可コア）](/docs/ja-jp/manage-users/access-control/rbac)の機能セットと[Authorization Extension（認可拡張機能）](/docs/ja-jp/customize/extensions/authorization-extension)は完全に別途の機能です。グループ、ロール、権限を管理するには、それらの作成に使用した方の機能を使う必要があります。
</Callout>

Authorization Extension（認可拡張機能）は、グループやロール、アクセス許可を使ったユーザーの認可に対応できるようにします。ログインの処理中に予期される動作を定義することができます。また、構成設定はランタイムで実行されるルールにキャプチャされます。詳細については、「[Auth0ルール](/docs/ja-jp/customize/rules)」をお読みください。

Authorization Extension（認可拡張機能）を使用すると、グループやロール、アクセス許可などの認可データを、Auth0発行の送信されるトークンに保管することができます。アプリケーションはトークンを検査してこの情報を利用し、ユーザーの現在の認可コンテキストに基づいて適切な処置を行うことができます。

Authorization Extension（認可拡張機能）では、ロールやアクセス許可はアプリケーションごとに設定されます。同じロールやアクセス許可が別のアプリケーションで必要な場合には、それらを個別に作成する必要があります。[認可コア](/docs/ja-jp/manage-users/access-control/rbac)機能セットでは、ロールやアクセス許可の扱いがより柔軟になります。

## 前提条件

拡張機能を使用する前に、以下を行う必要があります。

1. 拡張機能を[インストール](/docs/ja-jp/customize/extensions/authorization-extension/install-authorization-extension)する。
2. ログインのトランザクションで拡張機能がどのように振る舞うのかを[構成](/docs/ja-jp/customize/extensions/authorization-extension/configure-authorization-extension)する。
3. ユーザーやグループ、アクセス許可を[セットアップ](/docs/ja-jp/customize/extensions/authorization-extension/set-up-authorization-extension-users)する。

## データを管理する

データは、JSONファイルを使用して、拡張機能から手軽に出し入れすることができます。詳細は、「[認可拡張機能データをインポート・エクスポートする](/docs/ja-jp/customize/extensions/authorization-extension/import-and-export-authorization-extension-data)」を参照してください。

## 機能性を追加する

拡張機能が稼働したら、機能性を追加することができます。

* [拡張機能にAPIへのアクセスを許可する](/docs/ja-jp/customize/extensions/authorization-extension/enable-api-access-to-authorization-extension)：拡張機能のAPIを使用して、プロビジョニングの自動化と、リアルタイムでユーザーの認可コンテキストのクエリを行う方法について説明します。
* [認可拡張機能のAPIエンドポイントを検討する](/docs/ja-jp/api/authorization-extension)：認可拡張機能のAPIエンドポイントとその利用について説明します。
* [認可拡張機能のデータをルールで使用する](/docs/ja-jp/customize/extensions/authorization-extension/use-rules-with-the-authorization-extension)：ルールを使用して、ログインに追加のロジックを構成する方法について説明します。

## トラブルシューティング

一般的に直面する問題を扱った[トラブルシューティング](/docs/ja-jp/troubleshoot/authentication-issues/troubleshoot-authorization-extension)ページのヒントを参照してください。

## 以前のバージョンからアップグレードする

### バージョン2.6以降からのアップグレード

バージョン2.6以降からのアップグレードには破壊的な変更はなく、特別な処置は必要ありません。

### 2.6よりも前のバージョンからのアップグレード

認可拡張機能2.6には破壊的な変更があります。これは、APIキーの保管と処理を行うロジックが変更されたことに起因するもので、アップグレードの際には下記の追加の手順を行う必要があります。これらの手順を行わないと、ルールの実行時に、`InvalidApiKey`または`You are not allowed to access this application`（このアプリケーションへのアクセスは許可されていません）エラーが発生します。詳細については、[GitHubの変更ログ](https://github.com/auth0/auth0-authorization-extension/blob/master/CHANGELOG.md)をご覧ください。

1. [［Auth0 Dashboard］>［Extensions（拡張機能）］](https://manage.auth0.com/#/extensions)に移動して、 **［Installed Extensions（インストール済みの拡張機能）］** ビューを選択します。
2. **Auth0 Authorization** を見つけ、 **［Upgrade（アップグレード）］** を選択し、確定します。アップグレードが完了するのを待ちます。

#### 拡張機能のAPIキーをローテーションする

1. **Auth0 Authorization** を選択して拡張機能を開きます。
2. 拡張機能ダッシュボードの右上にあるドロップダウンメニューから **［Configuration（構成）］** を選択します。
3. **［API Key（APIキー）］** セクションを見つけて、 **［Rotate（ローテーション）］** を選択します。

#### 拡張機能のルールを再公開する

**［Publish Rule（ルールの公開）］** を選択します。

#### 以前の拡張機能のルールを削除する（存在する場合）

1. [［Auth0 Dashboard］>［Auth Pipeline（Authパイプライン）］>［Rules（ルール）］](https://manage.auth0.com/#/rules)に移動します。
2. `auth0-authz`ルールを見つけます。見つからない場合には、これで手順は終わりです。見つかった場合には、以下の手順を行います。
3. `auth0-authorization-extension`ルールを見つけて、`auth0-authz`ルールの下にドラッグ＆ドロップします。
4. `auth0-authz`ルールを確認します。

   * 認可拡張機能によって作成され、手動で変更されていない
   * 削除した場合、認可フローに対して、不適切なユーザーにアクセス許可や権限を与えるような変更を行わない
5. 上記に該当する場合には、トグルを使って`auth0-authz`ルールを無効にします。すべてが正常に動作することを確認したら、ルールを無効のままにするか、削除してしまうかを決めることができます。

## もっと詳しく

* [認可拡張機能をインストールする](/docs/ja-jp/customize/extensions/authorization-extension/install-authorization-extension)
* [認可拡張機能の構成](/docs/ja-jp/customize/extensions/authorization-extension/configure-authorization-extension)
* [認可拡張機能へのAPIアクセスの有効化](/docs/ja-jp/customize/extensions/authorization-extension/enable-api-access-to-authorization-extension)
* [認可拡張機能のデータをインポートまたはエクスポートする](/docs/ja-jp/customize/extensions/authorization-extension/import-and-export-authorization-extension-data)
* [認可拡張でルールを使用する](/docs/ja-jp/customize/extensions/authorization-extension/use-rules-with-the-authorization-extension)
* [認可拡張機能のトラブルシューティング](/docs/ja-jp/troubleshoot/authentication-issues/troubleshoot-authorization-extension)
