Azure Active Directory B2C の b2clogin.com にリダイレクト URL を設定するSet redirect URLs to b2clogin.com for Azure Active Directory B2C

Azure Active Directory B2C (Azure AD B2C) アプリケーションへのサインアップおよびサインイン用に ID プロバイダーを設定する際に、リダイレクト URL を指定する必要があります。When you set up an identity provider for sign-up and sign-in in your Azure Active Directory B2C (Azure AD B2C) application, you need to specify a redirect URL. アプリケーションと API での login.microsoftonline.com の参照は、これ以上実行しないでください。You should no longer reference login.microsoftonline.com in your applications and APIs. 代わりに、すべての新しいアプリケーションで b2clogin.com を使用し、既存のアプリケーションを login.microsoftonline.com から b2clogin.com に移行してください。Instead, use b2clogin.com for all new applications, and migrate existing applications from login.microsoftonline.com to b2clogin.com.

b2clogin.com の利点Benefits of b2clogin.com

リダイレクト URL として b2clogin.com を使用すると:When you use b2clogin.com as your redirect URL:

  • Microsoft サービスによって Cookie ヘッダーで使用される領域が減ります。Space consumed in the cookie header by Microsoft services is reduced.
  • リダイレクト URL に、Microsoft への参照を含める必要がなくなります。Your redirect URLs no longer need to include a reference to Microsoft.
  • カスタマイズされたページで、JavaScript クライアント側コードがサポートされます (現在、プレビュー段階です)。JavaScript client-side code is supported (currently in preview) in customized pages. login.microsoftonline.com を使用する場合は、セキュリティ上の制限により、JavaScript コードと HTML フォームの要素はカスタム ページから削除されます。Due to security restrictions, JavaScript code and HTML form elements are removed from custom pages if you use login.microsoftonline.com.

必要な変更の概要Overview of required changes

アプリケーションを b2clogin.com に移行するには、いくつかの変更が必要になることがあります。There are several modifications you might need to make to migrate your applications to b2clogin.com:

  • ID プロバイダーのアプリケーション内のリダイレクト URL を、b2clogin.com を参照するように変更します。Change the redirect URL in your identity provider's applications to reference b2clogin.com.
  • お使いの Azure AD B2C アプリケーションのユーザー フロー参照とトークン エンドポイントの参照で、b2clogin.com を使用するように更新します。Update your Azure AD B2C applications to use b2clogin.com in their user flow and token endpoint references.
  • ユーザー インターフェイスのカスタマイズ用に CORS の設定に定義されている許可されたオリジンを変更します。Update any Allowed Origins that you've defined in the CORS settings for user interface customization.

ID プロバイダーのリダイレクト URL を変更するChange identity provider redirect URLs

アプリケーションを作成した各 ID プロバイダーの Web サイトで、すべての信頼された URL を login.microsoftonline.com ではなく your-tenant-name.b2clogin.com にリダイレクトするように変更します。On each identity provider's website in which you've created an application, change all trusted URLs to redirect to your-tenant-name.b2clogin.com instead of login.microsoftonline.com.

b2clogin.com リダイレクト URL には、2 つの形式を使用できます。There are two formats you can use for your b2clogin.com redirect URLs. 1 つ目には、テナント ドメイン名の代わりにテナント ID (GUID) を使用することで、URL のどこにも "Microsoft" が表示されなくなるという利点があります。The first provides the benefit of not having "Microsoft" appear anywhere in the URL by using the Tenant ID (a GUID) in place of your tenant domain name:

https://{your-tenant-name}.b2clogin.com/{your-tenant-id}/oauth2/authresp

2 つ目のオプションでは、テナント ドメイン名を your-tenant-name.onmicrosoft.com の形式で使用します。The second option uses your tenant domain name in the form of your-tenant-name.onmicrosoft.com. 例:For example:

https://{your-tenant-name}.b2clogin.com/{your-tenant-name}.onmicrosoft.com/oauth2/authresp

どちらの形式でも:For both formats:

  • {your-tenant-name}を Azure AD B2C テナントの名前に置き換えます。Replace {your-tenant-name} with the name of your Azure AD B2C tenant.
  • URL 内に /te が存在する場合はそれを削除します。Remove /te if it exists in the URL.

アプリケーションと API を更新するUpdate your applications and APIs

Azure AD B2C 対応のアプリケーションと API のコードでは、さまざまな場所で login.microsoftonline.com が参照されている可能性があります。The code in your Azure AD B2C-enabled applications and APIs may refer to login.microsoftonline.com in several places. たとえば、コードにユーザー フローとトークン エンドポイントへの参照が含まれていることがあります。For example, your code might have references to user flows and token endpoints. 代わりに your-tenant-name.b2clogin.com が参照されるように以下を更新します。Update the following to instead reference your-tenant-name.b2clogin.com:

  • Authorization endpoint (承認エンドポイント)Authorization endpoint
  • Token endpoint (トークン エンドポイント)Token endpoint
  • トークン発行者Token issuer

たとえば、Contoso のサインアップ/サインイン ポリシーの機関エンドポイントは次のようになります。For example, the authority endpoint for Contoso's sign-up/sign-in policy would now be:

https://contosob2c.b2clogin.com/00000000-0000-0000-0000-000000000000/B2C_1_signupsignin1

Microsoft Authentication Library (MSAL)Microsoft Authentication Library (MSAL)

ValidateAuthority プロパティValidateAuthority property

MSAL.NET v2 以前を使用している場合、b2clogin.com へのリダイレクトを可能にするには、クライアント インスタンス化の ValidateAuthority プロパティを false に設定します。If you're using MSAL.NET v2 or earlier, set the ValidateAuthority property to false on client instantiation to allow redirects to b2clogin.com. この設定は、MSAL.NET v3 以降では必要ありません。This setting is not required for MSAL.NET v3 and above.

ConfidentialClientApplication client = new ConfidentialClientApplication(...); // Can also be PublicClientApplication
client.ValidateAuthority = false; // MSAL.NET v2 and earlier **ONLY**

MSAL for JavaScript を使用している場合:If you're using MSAL for JavaScript:

this.clientApplication = new UserAgentApplication(
  env.auth.clientId,
  env.auth.loginAuthority,
  this.authCallback.bind(this),
  {
    validateAuthority: false
  }
);