AWS Cognito の設定

ドキュメントの閲覧者向けにAWS Cognitoのログイン画面を設定します

circle-exclamation

AWS Cognito を使用して認証付きアクセスで GitBook サイトをセットアップする手順は、次のとおりです。

1

新しい AWS Cognito アプリケーションを作成する

AWS ダッシュボードから AWS Cognito アプリケーションを作成します。

2

AWS Cognito の統合をインストールして設定する

AWS Cognito の統合をインストールし、必要な設定を追加します。

3

アダプティブ コンテンツ用に AWS Cognito を設定する(任意)

GitBook でアダプティブ コンテンツが動作するように AWS Cognito を設定します。

新しい AWS Cognito アプリケーションを作成する

Cognito で目的の User Pool に移動し、App integration をクリックします。Cognito ドメインをメモしておいてください。統合を設定するために必要になります。

下までスクロールして「Create app client」をクリックします。アプリの種類では「Confidential client」を選択します。さらに下へスクロールして Hosted UI settings を開きます。allowed Callback URLs に、スペースに統合をインストールしたときに GitBook から取得した Callback URL を入力します。

さらに下へスクロールして「OAuth 2.0 grant types」を開き、「Authorization code grant」が選択されていることを確認します。

「OpenID connect scopes」では、OpenID が選択されていることを確認します。

下へスクロールして「Create app client」をクリックします。

作成した app client をクリックし、Client ID と Client Secret をメモします。

AWS Cognito の統合をインストールして設定する

GitBook アプリ内の integrations に移動し、カテゴリとして authenticated access を選択して、AWS Cognito の統合をインストールします。

A GitBook screenshot showing the AWS Cognito integration install screen

サイトにインストールしたら、configuration に移動し、Save ボタンのすぐ上にある Callback URL をメモします。Cognito をセットアップするために必要になります。

統合をインストールしたスペースの Cognito 統合の設定画面を開きます。

次の画像のようになっているはずです:

A GitBook screenshot showing the AWS Cognito configuration screen

Client ID、Cognito Domain、Client Secret には、Cognito から取得した値を貼り付けます。

Save を押します。

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

アダプティブ コンテンツ用に AWS Cognito を設定する(任意)

GitBook で認証付きアクセスと Adaptive Content を活用するには、ID トークンにカスタムクレームを含めるよう Amazon Cognito のユーザープールを設定する必要があります。

これは通常、 Cognito Lambda トリガーarrow-up-rightを作成することで行います。具体的には Pre Token Generation Lambda を使い、カスタムクレームを上書きまたは追加する JSON ペイロードを返します。これらのクレームには、ユーザーの役割、サブスクリプションの階層、またはコンテンツに関連するその他のメタデータを含めることができます。

以下に、その例を示します:

追加すると、これらのキーと値のペアは認証トークンに含まれて GitBook に渡され、認証済みユーザーのプロフィールに基づいてサイトがコンテンツを動的に適応できるようになります。

最終更新

役に立ちましたか?