# OIDC の設定

{% hint style="warning" %}
このガイドでは、ドキュメント用の保護されたサインイン画面の設定方法を順を追って説明します。このガイドに進む前に、まず次の手順を済ませておいてください。 [認証済みアクセスを有効にする](https://gitbook-v2-5hpihs24d-gitbook.vercel.app/url/gitbook.com/docs/documentation/ja-gitbook-documentation/saitohenoakusesu/authenticated-access/enabling-authenticated-access).
{% endhint %}

OIDC を使用した認証アクセスで GitBook サイトを設定する手順は、次のとおりです:

{% stepper %}
{% step %}
**アイデンティティプロバイダーで新しいアプリケーションを作成する**

アイデンティティプロバイダーのダッシュボードからアプリケーションを作成します。
{% endstep %}

{% step %}
**OIDC インテグレーションをインストールして設定する**

Auth0 インテグレーションをインストールし、必要な設定を追加します。
{% endstep %}
{% endstepper %}

OIDC は OpenID Connect の略で、OAuth の上に構築された ID レイヤーです。多くのアイデンティティプロバイダーは OIDC に準拠しており、GitBook の認証アクセス用 OIDC インテグレーションを使うと、スペースを認証アクセスの背後に公開し、コンテンツへのアクセスをアイデンティティプロバイダーによって制御できます

{% hint style="info" %}
このガイドはすべてのアイデンティティプロバイダー向けの一般的なガイドであるため、アイデンティティプロバイダーによっては一部の詳細が異なる場合があります。説明のため、このガイドではアイデンティティプロバイダーとして Google を使用しています。
{% endhint %}

### アイデンティティプロバイダーで新しいアプリケーションを作成する

インテグレーションを動作させるには、アイデンティティプロバイダー側で設定する必要がある項目がいくつかあります。

アイデンティティプロバイダー内で新しいアプリを作成する必要があります。種類は「Web Application」である必要があります。Google では、これを「API とサービス」→「認証情報」→「OAuth 2.0 クライアント ID」の下で作成します。\\

<figure><img src="https://4217681718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNkEGS7hzeqa35sMXQZ4X%2Fuploads%2F8ra7t88ktqM7yX7w1l4m%2FScreen%20Shot%202024-05-15%20at%2011.19.59%20AM.png?alt=media&#x26;token=bc1fbb59-5a36-47f8-985f-da9c743e3adb" alt="A screenshot showing creation of an OAuth client in an identity provider"><figcaption></figcaption></figure>

\[認証情報を作成] をクリックし、\[OAuth クライアント ID] を選択し、種類として \[Web Application] を選択して適切な名前を付け、\[承認済みリダイレクト URI] に GitBook から取得したコールバック URL を入力します。

\[作成] をクリックします。クライアント ID とクライアント シークレットを控えておいてください。GitBook でインテグレーションの設定を完了する際に必要になります。

### OIDC インテグレーションをインストールして設定する

GitBook アプリ内の \[Integrations] に移動し、カテゴリとして \[authenticated access] を選択して、OIDC インテグレーションをインストールします。選択した docs サイトに OIDC インテグレーションをインストールしてください。

<figure><img src="https://4217681718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNkEGS7hzeqa35sMXQZ4X%2Fuploads%2FCZy21M4LIPwMVSxI3ec1%2FScreen%20Shot%202024-12-13%20at%203.37.39%20PM.png?alt=media&#x26;token=4e31d496-04eb-4d00-ac45-011b543edfe4" alt="A GitBook screenshot showing the OIDC integration installation"><figcaption></figcaption></figure>

サイトにインストールしたら、設定画面に移動し、\[Save] ボタンのすぐ上にあるコールバック URL を控えておきます。アイデンティティプロバイダーの設定に必要になる場合があります。

インテグレーションをインストールしたスペースの OIDC インテグレーション設定画面を開きます。

次の画像のようになります

<figure><img src="https://4217681718-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FNkEGS7hzeqa35sMXQZ4X%2Fuploads%2F04b2yAGjDIJQsA2aPIEO%2FScreen%20Shot%202024-12-13%20at%203.38.30%20PM.png?alt=media&#x26;token=e89e34c5-0e95-4547-a507-cc1d727b6ee5" alt="A GitBook screenshot showing the OIDC configuration screen"><figcaption></figcaption></figure>

Client ID と Client Secret には、アイデンティティプロバイダーから取得した値を貼り付けてください。

次に、アイデンティティプロバイダーの Authorization Endpoint と Access Token Endpoint を見つける必要があります。Google の場合は、次のとおりです `https://accounts.google.com/o/oauth2/v2/auth` 、 `https://oauth2.googleapis.com/token` それぞれです。

{% hint style="info" %}
Google を使用していない場合、これらのエンドポイントは異なります。アイデンティティプロバイダーのドキュメントを参照して、これらのエンドポイントを見つけてください
{% endhint %}

OAuth Scope については、その値もアイデンティティプロバイダーによって異なります。Google の場合は、次を入力できます `openid`.

{% hint style="info" %}
アイデンティティプロバイダーのドキュメントで許可されているスコープの一覧を確認し、最も制限の厳しいスコープの値を入力してください。私たちは、ユーザーが認証済みであることを確認するために Access Token のみを使用しており、それ以上の情報を取得するために Access Token を使用することはありません。そのため、最も制限の厳しいスコープを入力することが最適なセキュリティ上の推奨事項です。
{% endhint %}

Save をクリックします。

次に、GitBook でインテグレーションのモーダルを閉じ、Manage site ボタンをクリックします。次に **Audience**に移動し、 **認証付きアクセス**、そしてバックエンドとして OIDC を選択します。次に、 **オーディエンスを更新**をクリックします。サイトの画面に移動し、 **公開**をクリックします。\
\
これでサイトは Auth0 アプリケーションによって制御された認証アクセスの背後で公開されました。試すには、\[Visit] をクリックしてください。OIDC でサインインするよう求められ、これにより、サイトが Auth0 を使用した認証アクセスの背後で公開されていることが確認されます。
