次の方法で共有


チュートリアル: Azure Active Directory B2C に Web アプリケーションを登録する

重要

2025 年 5 月 1 日より、Azure AD B2C は新規のお客様向けに購入できなくなります。 詳細については、FAQ を参照してください

アプリケーションが Azure Active Directory B2C (Azure AD B2C) と対話できるようにするには、管理するテナントにアプリケーションを登録する必要があります。 このチュートリアルでは、Azure portal を使用して Web アプリケーションを登録する方法について説明します。

"Web アプリケーション" とは、サーバー上でほとんどのアプリケーション ロジックを実行する従来の Web アプリケーションを指します。 これらは、ASP.NET Core、Spring (Java)、Flask (Python)、Express (Node.js) などのフレームワークを使用して構築できます。

重要

代わりにシングルページ アプリケーション ("SPA") を使用している場合 (Angular、Vue、React の使用など)、 シングルページ アプリケーションを登録する方法について説明します。

代わりにネイティブ アプリ (iOS、Android、モバイル、デスクトップなど) を使用している場合は、 ネイティブ クライアント アプリケーションを登録する方法について説明します。

[前提条件]

  • Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。

  • まだご自分のAzure AD B2C テナントを作成していない場合は、今すぐ作成してください。 既存の Azure AD B2C テナントを使用できます。

Web アプリケーションを登録する

Azure AD B2C テナントに Web アプリケーションを登録するには、新しい統合 アプリ登録を使用できます。 新しいエクスペリエンスの詳細を確認します。

アプリの登録

  1. Azure portal にサインインします。

  2. 複数のテナントにアクセスできる場合、上部のメニューの [設定] アイコンを選択し、[ディレクトリとサブスクリプション] メニューからお使いの Azure AD B2C テナントに切り替えます。

  3. Azure portal で、Azure AD B2C を検索して選択します。

  4. [アプリの登録] を選択し、[新しい登録] を選択します。

  5. アプリケーションの名前を入力します。 たとえば、 webapp1 です。

  6. [サポートされているアカウントの種類] で、[(ユーザー フローを使用してユーザーを認証するための) 任意の ID プロバイダーまたは組織のディレクトリのアカウント] を選択します。

  7. [ リダイレクト URI] で [ Web] を選択し、URL テキスト ボックスに「 https://jwt.ms 」と入力します。

    リダイレクト URI は、ユーザーとの対話が完了した後に承認サーバー (この場合は Azure AD B2C) によってユーザーが送信されるエンドポイントであり、承認が成功したときにアクセス トークンまたは承認コードが送信されます。 実稼働アプリケーションでは、通常は https://contoso.com/auth-response などの、お使いのアプリが実行されているパブリック アクセスが可能なエンドポイントです。 このチュートリアルのようなテスト目的で、トークンのデコードされた内容を表示する Microsoft 所有の Web アプリケーションである https://jwt.ms に設定できます (トークンの内容がブラウザーから離れることはありません)。 アプリの開発中に、アプリケーションがローカルでリッスンするエンドポイント ( https://localhost:5000など) を追加できます。 お使いの登録済みアプリケーションでは、いつでもリダイレクト URI を追加したり、変更したりすることができます。

    リダイレクト URI には、次の制限があります。

    • localhost リダイレクト URL を使用しない場合、応答 URL はスキーム https で始まる必要があります。
    • 応答 URL では大文字と小文字が区別されます。 大文字と小文字の区別は、実行中のアプリケーションの URL パスの場合と一致している必要があります。 たとえば、ご利用のアプリケーションがそのパス .../abc/response-oidc の一部として含まれている場合は、応答 URL 内では .../ABC/response-oidc と指定しないでください。 Web ブラウザーでは大文字と小文字を区別を区別するものとしてパスが処理されるため、.../abc/response-oidc に関連付けられている cookie は、大文字と小文字が一致しない .../ABC/response-oidc URL にリダイレクトされた場合に除外される可能性があります。
    • 応答 URL では、アプリケーションで想定されているように、末尾のスラッシュを含めるか除外する必要があります。 たとえば、 https://contoso.com/auth-responsehttps://contoso.com/auth-response/ は、アプリケーションで一致しない URL として扱われる場合があります。
  8. 許可の下にある、「openid」と「offline_access」権限に対する管理者の同意を付与する」 チェックボックスを選択します。

  9. 登録 を選択します。

ヒント

作成したアプリが [アプリの登録] に表示されない場合は、ポータルを更新してください。

クライアント シークレットを作成する

Web アプリケーションの場合は、アプリケーション シークレットを作成する必要があります。 クライアント シークレットは、アプリケーション パスワードと呼ばれることもあります。 シークレットは、アクセス トークンの承認コードを交換するためにアプリケーションによって使用されます。

アプリの登録

  1. Azure AD B2C - アプリの登録ページで、作成したアプリケーション (webapp1 など) を選択します。
  2. 左側のメニューの [ 管理] で、[ 証明書とシークレット] を選択します。
  3. 新しいクライアント シークレットを選択します。
  4. [説明] ボックスに、クライアント シークレットの説明を入力します。 たとえば、clientsecret1 のようにします。
  5. [有効期限] で、シークレットが有効な期間を選択してから、 [追加] を選択します。
  6. クライアント アプリケーションのコードで使用できるように、シークレットのを記録します。 このページからの移動後は、このシークレットの値は "二度と表示されません"。 アプリケーションのコード内で、この値をアプリケーション シークレットとして使用します。

セキュリティ上の理由から、アプリケーション シークレットを定期的にロールオーバーすることも、緊急時にすぐにロール オーバーすることもできます。 Azure AD B2C と統合するアプリケーションは、発生する頻度に関係なく、シークレット ロールオーバー イベントを処理するように準備する必要があります。 2 つのアプリケーション シークレットを設定できます。これにより、アプリケーション シークレットのローテーション イベント中にアプリケーションで古いシークレットを使用し続けることができます。 別のクライアント シークレットを追加するには、このセクションの手順を繰り返します。

ID トークンの暗黙的な許可を有効にする

暗黙的な許可フローを有効にして、このアプリ登録を使用して 、テスト目的でユーザー フローをテストできます

  1. 作成したアプリの登録を選びます。

  2. [管理] で、 [認証] を選択します。

  3. [暗黙的な許可およびハイブリッド フロー] で、[アクセス トークン (暗黙的なフローに使用)][ID トークン (暗黙的およびハイブリッド フローに使用)] の両方のチェック ボックスをオンにします。

  4. 保存 を選択します。

暗黙的な許可を有効にしてユーザー フローをテストする場合は、アプリを運用環境にデプロイする前に、暗黙的な許可フロー設定を無効にしてください。

次のステップ

この記事では、次の方法を学習しました。

  • Web アプリケーションを登録する
  • クライアント シークレットを作成する

Azure Active Directory B2C でユーザー フローを作成する方法について説明します