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

> Auth0 の通常の Web アプリ向けシナリオ設定

# Auth0 設定（Web アプリ + SSO）

このセクションでは、[Auth0 Dashboard](https://manage.auth0.com/#) を使用して必要な設定を一通り確認します。

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

Auth0 の設定では、まずタイムシートアプリを <Tooltip tip="Auth0 Dashboard: サービスを設定するための Auth0 の主要製品です。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Auth0+dashboard">Auth0 Dashboard</Tooltip> に **アプリケーション** として登録します。アプリケーションは、<Tooltip tip="Resource Owner: 保護されたリソースへのアクセスを許可できるエンティティ（ユーザーやアプリケーションなど）。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=resource+owner">resource owner</Tooltip> (エンドユーザー) に代わって保護されたリソースへのリクエストを行います。

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

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

* **Name**: アプリケーションの正式名称です。ポータル、メール、ログなどでアプリケーションを識別するために使用されます。
* **<Tooltip tip="Client ID: 登録したリソースに対して Auth0 から付与される識別値です。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Client+ID">Client ID</Tooltip>** (読み取り専用) : アプリケーションの一意の識別子です。アプリケーションで Auth0 の認証を設定する際に使用する ID です。自動生成される英数字の文字列です。
* **<Tooltip tip="Client Secret: クライアント（アプリケーション）が Authorization Server で認証するために使用する秘密情報です。これはクライアントと Authorization Server のみが知るべきであり、推測できないよう十分にランダムでなければなりません。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Client+secret">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 つだけで、それが timesheets の Web アプリです。そのため、Auth0 側で設定する アプリケーション も 1 つだけです。

データベース接続を登録するには、[Dashboard](https://manage.auth0.com/#) に移動し、サイドナビゲーションで [Applications](https://manage.auth0.com/#/applications) を選択します。

**+ Create Application** ボタンをクリックします。アプリケーションの名前と種類の入力を求められるので、アプリケーション名を `Timesheet-App` 、種類を `Regular Web Applications` にします。

**Create** をクリックすると、[Quick Start view](https://manage.auth0.com/#/applications/\{yourClientId}/quickstart) に移動します。ここでは、アプリの構築に使用する予定の技術を選択でき、対応するクイックスタートガイドが表示されます。

利用可能な他のビューは次のとおりです。

* [Settings](https://manage.auth0.com/#/applications/\{yourClientId}/settings)
* [Addons](https://manage.auth0.com/#/applications/\{yourClientId}/addons)
* [Connections](https://manage.auth0.com/#/applications/\{yourClientId}/connections)

<div id="configure-callback-urls">
  ### コールバック URL を設定する
</div>

**Allowed Callback URLs** フィールドには、ユーザーの認証後に Auth0 がリダイレクトする URL を指定します。これは、<Tooltip tip="OpenID: ログイン情報を収集・保存することなく、アプリケーションがユーザーの本人確認を行えるようにする認証のためのオープン標準。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=OpenID">OpenID</Tooltip> Connect (OIDC) が認証プロセスを完了するために必要です。有効な URL はカンマ区切りで複数指定できます。サブドメインにはワイルドカードとしてアスタリスクを使用でき、たとえば `*.google.com` のように指定できます。プロトコル `http://` または `https://` を必ず指定してください。指定しないと、場合によってはコールバックが失敗することがあります。

このサンプルプロジェクトの Callback URL は `http://localhost:5000/signin-auth0` です。サンプルを使用する場合は、この値を **Allowed Callback URLs** フィールドに設定してください。使用しない場合は、アプリケーションのデプロイ先として選択した URL を追加してください。

<div id="connections">
  ## コネクション
</div>

次のステップでは、Web アプリでの認証に使用する<Tooltip tip="Identity Provider (IdP): デジタルアイデンティティを保存および管理するサービス。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=identity+providers">アイデンティティプロバイダー</Tooltip>を設定します。各アイデンティティプロバイダーは、Auth0 では **コネクション** に対応します。各アプリケーションには少なくとも 1 つのコネクションが必要であり、各コネクションは複数のアプリケーションで使用できます。

ExampleCo では、2 つのコネクションを設定する必要があります。1 つは社内従業員向けの Active Directory コネクション、もう 1 つは外部ユーザー向けの Database コネクションです。

<Info>
  ### サポートされているアイデンティティプロバイダー

  Auth0 は、非常に多くのプロトコルとアイデンティティプロバイダーをサポートしています。

  * ソーシャル: Google、Facebook、LinkedIn、Github などを使って、ユーザーがログインできるようにします。
  * エンタープライズ: Active Directory、ADFS、LDAP、<Tooltip tip="Security Assertion Markup Language (SAML): パスワードを使わずに 2 者間で認証情報を交換できるようにする標準化されたプロトコル。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=SAML-P">SAML-P</Tooltip> などを使って、ユーザーがログインできるようにします。
  * データベースコネクション: 新しいデータベースコネクションを設定して独自のユーザーストアを作成し、メールアドレス/ユーザー名とパスワードを使用してユーザーを認証します。認証情報は、Auth0 のユーザーストアまたは独自のデータベースのいずれかに安全に保存できます。
  * <Tooltip tip="Passwordless: 第 1 要素としてパスワードに依存しない認証方式。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Passwordless">パスワードレス</Tooltip>認証: パスワードを覚える必要なく、SMS やメールなどの認証チャネルを使ってユーザーがログインできるようにします。
</Info>

<div id="create-a-database-connection">
  ### データベースコネクションを作成する
</div>

データベースコネクションを登録するには、以下の手順に従ってください。

1. [Dashboard](https://manage.auth0.com/#) で、**Authentication > Database** に移動します。
2. **+ Create DB Connection** を選択します。表示される画面でコネクション名を入力し、必要に応じて追加の設定を行います。
3. 内容に誤りがないことを確認し、**Create** を選択します。

データベースコネクションを作成したら、そのコネクションで使用するアプリケーションを有効にする必要があります。ユーザーがそのコネクションを使ってアプリケーションにアクセスするには、そのアプリケーションで当該コネクションが有効になっている必要があります。アプリケーションを有効にするには、新しいコネクションの Applications タブに移動し、そのコネクションを使用する各アプリケーションのトグルを有効にします。

データベースコネクションの詳細については、[Database Identity Providers](/docs/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 Connector をインストールする必要があります。詳細については、以下のドキュメントを参照してください。

* [Active Directory を Auth0 に接続する方法](/docs/ja-jp/authenticate/identity-providers/enterprise-identity-providers/active-directory-ldap)
* [Active Directory/LDAP Connector をインストールする方法](/docs/ja-jp/authenticate/identity-providers/enterprise-identity-providers/active-directory-ldap/ad-ldap-connector)

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  AD/LDAP Connector は、Active Directory と Auth0 サービスの間をつなぐブリッジです。このブリッジが必要なのは、AD は通常社内ネットワーク内に閉じられている一方で、Auth0 はまったく異なる環境で動作するクラウドサービスだからです。 [詳細情報](/docs/ja-jp/authenticate/identity-providers/enterprise-identity-providers/active-directory-ldap/ad-ldap-connector)
</Callout>

コネクションとコネクターの設定が完了したら、必ずアプリケーションでこの AD / LDAP コネクションを使用できるようにしてください。

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

  AD/LDAP コネクターは Kerberos をサポートしており、企業ネットワーク内のドメイン参加済みマシンを使用しているユーザーが、より簡単に認証できるようになります。Active Directory で Kerberos を有効にするには、ダッシュボードでこのオプションを有効にするだけです。Kerberos を有効にすると、**IP Ranges** も設定できるようになります。ユーザーがこれらの IP アドレス範囲からアクセスしている場合、この情報が SSO エンドポイントで公開されます。つまり、auth0.js や Lock などのクライアントサイド SDK が Kerberos サポートを検出し、Integrated Windows Authentication を利用できるようになります。
  [詳細情報](/docs/ja-jp/authenticate/identity-providers/enterprise-identity-providers/active-directory-ldap/ad-ldap-connector/configure-ad-ldap-connector-with-kerberos)

  <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
    Kerberos を有効にする場合は、AD/LDAP の設定ファイルにいくつか変更を加える必要があります。詳しくは、[AD/LDAP Connector Settings を変更する](/docs/ja-jp/authenticate/identity-providers/enterprise-identity-providers/active-directory-ldap/ad-ldap-connector/ad-ldap-connector-to-auth0) を参照してください。
  </Callout>
</Info>

これでソリューションの設計と Auth0 側で必要な設定の説明が完了したので、次は Auth0 をタイムシート Web アプリに統合していきます。
