> ## Documentation Index
> Fetch the complete documentation index at: https://auth0.generaltranslation.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Auth0の構成（Webアプリ + SSO）

> 通常のWebアプリのシナリオでのAuth0の構成

このセクションでは、[Auth0 Dashboard](https://manage.auth0.com/#)での適用が必要なすべての構成を確認します。

<div id="application">
  ## アプリケーション
</div>

Auth0の構成部分は、<Tooltip data-tooltip-id="react-containers-DefinitionTooltip-0" href="/docs/ja-JP/ja-jp/glossary?term=auth0-dashboard" tip="Auth0 Dashboard: サービスを構成するためのAuth0の主製品。" cta="用語集の表示">Auth0 Dashboard</Tooltip>でタイムシートアプリを**アプリケーション** として登録するところから始まります。アプリケーションは、リソース所有者（エンドユーザー）に代わって保護されたリソースへの要求を行います。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  「アプリケーション」という用語は、何らかの実装特性を示すものではありません。Webアプリ、モバイルアプリ、SPAなどをアプリケーションと呼びます。ExampleCoの場合では、WebアプリのASP.NET Coreがアプリケーションです。
</Callout>

Auth0におけるアプリケーションの主な特徴は以下のとおりです。

* **Name（名前）** ：アプリケーションの正式名称。これは、ポータル、メール、ログなどでアプリケーションを識別するために使用されます。
* **<Tooltip data-tooltip-id="react-containers-DefinitionTooltip-4" href="/docs/ja-JP/ja-jp/glossary?term=client-id" tip="クライアントID: Auth0から登録されたリソースに与えられる識別値。" cta="用語集の表示">Client ID</Tooltip>（クライアント ID）** （読み取り専用）：アプリケーションに一意の識別子。これは、Auth0で認証を設定する際に、アプリケーションで使用されるIDです。自動生成された英数字の文字列です。
* **<Tooltip data-tooltip-id="react-containers-DefinitionTooltip-0" href="/docs/ja-JP/ja-jp/glossary?term=client-secret" tip="クライアントシークレット: クライアント（アプリケーション）が認可サーバーで認証するために使用するシークレット。これはクライアントと認可サーバーだけが知っているものであり、推測できないように十分にランダムである必要があります。" cta="用語集の表示">Client secret</Tooltip>（クライアントシークレット）** （読み取り専用）：トークンの署名と検証に使用される文字列で、それらのトークンはさまざまな認証フローで使用されます。自動生成され、機密として扱わなければなりません。
* **Domain（ドメイン）** ：Auth0アカウントに割り当てられたドメイン名。ドメインの形式は、`{account-name}.auth0.com`または`{account-name}.{location}.auth0.com`（例：`ExampleCo.auth0.com`）です。
* **Callback URL** ：ユーザーが認証後にリダイレクトされるURL。

<div id="create-an-application">
  ### アプリケーションを作成する
</div>

ExampleCoのシナリオにあるのは、1つのアプリケーション（タイムシートWebアプリ）のみです。このため、Auth0側で1つのアプリケーションを構成する必要があります。

データベース接続を登録するには、[ダッシュボード](https://manage.auth0.com/#)に移動し、サイドナビゲーションで[［Applications（アプリケーション）］](https://manage.auth0.com/#/applications)を選択します。

**［+ Create Application (アプリケーションの作成）］** ボタンをクリックします。アプリケーションの名前と種類が求められます。アプリケーションの名前を「`Timesheet-App`」とし、アプリケーションの種類に［`Regular Web Applications`（通常のWebアプリケーション）］を選択します。

**［Create（作成）］** をクリックすると、[［Quick Start（クイックスタート）］ビュー](https://manage.auth0.com/#/applications/\{yourClientId}/quickstart)に移動します。ここでは、アプリの構築に使う予定の技術を選択できます。選択すると、それに関連したクイックスタートガイドが表示されます。

そ例外にも、以下のビューを使用できます。

* [Settings（設定）](https://manage.auth0.com/#/applications/\{yourClientId}/settings)
* [Addons（アドオン）](https://manage.auth0.com/#/applications/\{yourClientId}/addons)
* [接続（接続）](https://manage.auth0.com/#/applications/\{yourClientId}/connections)

<div id="configure-callback-urls">
  ### Callback URLを構成する
</div>

**［Allowed Callback URLs（許可されているCallback URL）］** フィールドには、Auth0がユーザーの認証後にリダイレクトするURLが含まれています。このリダイレクトにより、<Tooltip data-tooltip-id="react-containers-DefinitionTooltip-0" href="/docs/ja-JP/ja-jp/glossary?term=openid" tip="OpenID: アプリケーションがログイン情報を収集および保存することなくにユーザーのIDを検証できるようにする認証用のオープン標準。" cta="用語集の表示">OpenID</Tooltip> Connect（OIDC）の認証プロセスが完了します。複数の有効なURLを指定するには、カンマで区切って指定します「`*.google.com`」のように、サブドメインのワイルドカードとして「\*」記号を使用することができます。プロトコル（`http://`または`https://`）を指定してください。指定しないと、場合によってはコールバックが失敗します。

サンプルプロジェクトのCallback URLは、「`http://localhost:5000/signin-auth0`」です。このサンプルを使用する場合は、この値を **［Allowed Callback URLs（許可されているコールバックURL）］** フィールドに設定します。そうでない場合は、アプリケーションの導入に選択したURLを追加します。

<div id="connections">
  ## 接続
</div>

次のステップでは、Webアプリで認証に使用されるIDプロバイダーを構成します。各IDはAuth0にある **接続** へのマップを提供します。各アプリケーションには少なくとも1つの接続が必要です。それぞれの接続は複数のアプリケーションで使用することができます。

ExampleCoでは、2つの接続を構成する必要があります。1つは社内従業員用のActive Directory接続で、もう1つは外部関係者用のデータベース接続です。

<Info>
  ### 対応しているIDプロバイダー

  Auth0は、多様なプロトコルとIDプロバイダーをサポートします。

  * ソーシャル：Google、Facebbok、LinkedIn、GitHub、その他をユーザーが使用してログインできるようにします。- エンタープライズ：Active Directory、ADFS、LDAP、<Tooltip data-tooltip-id="react-containers-DefinitionTooltip-4" href="/docs/ja-JP/ja-jp/glossary?term=security-assertion-markup-language" tip="Security Assertion Markup Language（SAML）: パスワードなしに二者間で認証情報を交換できる標準化プロトコル。" cta="用語集の表示">SAML-P</Tooltip>、その他をユーザーが使用してログインできるようにします。- データベース接続：新しいデータベース接続を設定して独自のユーザーストアを作成し、メール/ユーザー名とパスワードを使用してユーザーを認証します。資格情報は、Auth0ユーザーストアまたは独自のデータベースに安全に保存することができます。
  * <Tooltip data-tooltip-id="react-containers-DefinitionTooltip-5" href="/docs/ja-JP/ja-jp/glossary?term=passwordless" tip="パスワードレス: 最初の要素としてパスワードに依存しない認証の形式。" cta="用語集の表示">パスワードレス</Tooltip>の認証：ユーザーがパスワードを記憶せずとも ログインできるように、SMSやメールといった認証チャンネルを使用します。
</Info>

<div id="create-a-database-connection">
  ### データベース接続を作成する
</div>

データベース接続を登録するには、以下の手順に従います。

1. [Dashboard](https://manage.auth0.com/#)から **［Authentication（認証）］>［Database（データベース）］** に移動します。
2. **［+ Create DB Connection（+ DB接続の作成）］** を選択します。プロンプトに接続名を入力し、必要であれば追加の要件を構成します。
3. 内容が正しいことを確認してから、**［Create（作成）］** を選択します。

データベース接続を作成したら、その接続にアプリケーションを有効化する必要があります。ユーザーがその接続を使ってアプリケーションにアクセスできるように、接続にアプリケーションを有効化しなければなりません。アプリケーションを有効にするには、新しい接続の［Applications（アプリケーション）］タブに移動して、その接続の使用が必要なアプリケーションのそれぞれについて、トグルを有効に設定します。

データベース接続の詳細については、「[データベースIDプロバイダー](/docs/ja-JP/ja-jp/authenticate/database-connections)」を参照してください。

<div id="create-an-active-directory-ldap-connection">
  ### Active Directory/LDAP接続を作成する
</div>

次に、Active Directory/LDAP接続を構成します。[Auth0 Dashboard](https://manage.auth0.com/#)から **［Authentication（認証）］>［Enterprise（エンタープライズ）］** に移動します。

そこでAD/LDAP接続を作成し、ADコネクターをインストールする必要があります。詳細は以下のドキュメントをご覧ください。

* [How to connect your Active Directory with Auth0（Active DirectoryをAuth0と接続する方法）](/docs/ja-JP/ja-jp/authenticate/identity-providers/enterprise-identity-providers/active-directory-ldap)
* [How to install the Active Directory/LDAP Connector（Active Directory/LDAPコネクターのインストール方法）](/docs/ja-JP/ja-jp/authenticate/identity-providers/enterprise-identity-providers/active-directory-ldap/ad-ldap-connector)

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  AD/LDAPコネクターは、 Active DirectoryとAuth0サービス間の橋渡し役です。ADが通常内部ネットワークにロックダウンされている一方、Auth0はまったく異なるコンテキストで実行されるクラウドサービスであるため、橋渡しを必要とします。[詳細情報](https://auth0.com/docs/connector/overview)
</Callout>

接続とコネクターの構成が完了したら、必ず、このAD/LDAP接続をアプリケーションに有効にしてください。

<Info>
  ### Kerberosのサポート

  AD/LDAPコネクターは、ユーザーが企業ネットワーク内のドメイン参加マシンで認証を行う際に認証を容易にするために、Kerberosをサポートしています。Active DirectoryでKerberosをアクティベートするには、Dashboardのオプションを有効化してください。Kerberosを有効化した後、 \_\_IPの範囲\_\_も設定できるようになります。これらのIPアドレス範囲からのユーザーが発生する場合、この情報はSSOエンドポイントで公開されるため、auth0.jsやLockなどのクライアントサイドのSDKがKerberosサポートを検出し、統合Windows認証を許可できるようになります。[詳細](/docs/ja-JP/ja-jp/connector/kerberos)

  ::: 注意
  Kerberosを有効にすると、AD/LDAPの設定ファイルにいくつかの変更をする必要があります。詳細は、[「AD/LDAPコネクター設定を修正する」](/docs/ja-JP/ja-jp/connector/modify)をご覧ください。
</Info>

これで、ソリューションの設計とAuth0に必要な構成は完了です。次に、Auth0をタイムシートWebアプリに統合することができます。
