外部 ID の ID プロバイダーとして Facebook を追加する

ヒント

この記事では、B2B コラボレーションの ID プロバイダーとして Facebook を追加する方法について説明します。 テナントが顧客の ID およびアクセス管理用に構成されている場合は、顧客向けの「Facebook を ID プロバイダーとして追加する」を参照してください。

Facebook をセルフサービス サインアップのユーザー フローに追加して、ユーザーが自分の Facebook アカウントを使用してアプリケーションにサインインできるようにすることができます。 ユーザーが Facebook を使用してサインインできるようにするには、まず、テナントに対してセルフサービス サインアップを有効にする必要があります。 Facebook を ID プロバイダーとして追加した後、アプリケーションに対するユーザー フローを設定し、サインイン オプションの 1 つとして Facebook を選択します。

アプリケーションのサインイン オプションの 1 つとして Facebook を追加すると、ユーザーは [サインイン] ページで、Facebook へのサインインに使用するメール アドレスを入力するか、[サインイン オプション] を選んで [Facebook アカウントでサインイン] を選択できます。 どちらの場合も、認証のために Facebook のサインイン ページにリダイレクトされます。

Facebook ユーザーのサインイン オプション

注意

ユーザーは、セルフサービス サインアップおよびユーザー フローを使用したアプリ経由のサインアップに限り、Facebook アカウントを使用できます。 ユーザーは招待されても、Facebook アカウントを使用して招待を利用することはできません。

Facebook 開発者コンソールでアプリを作成する

ID プロバイダーとして Facebook アカウントを使用するには、Facebook 開発者コンソールでアプリケーションを作成する必要があります。 まだ Facebook アカウントを持っていない場合は、https://www.facebook.com/ でサインアップできます。

Note

このドキュメントは、作成した時点でのプロバイダーの開発者ページの状態を使って作成されたものであり、変更が発生する可能性があります。

  1. Facebook 開発者アカウントの資格情報を使用して、開発者向けの Facebookにサインインします。
  2. それをまだ行っていない場合は、Facebook 開発者として登録します。ページの右上隅で [作業の開始] を選択し、Facebook のポリシーに同意して、登録手順を完了します。
  3. [Create app](アプリの作成) を選択します。 この手順では、Facebook プラットフォームのポリシーを受け入れてオンライン セキュリティ チェックを完了することが必要な場合があります。
  4. [Authenticate and request data from users with Facebook Login]>[Next] を選びます。
  5. [Are you building a game?][No, I'm not building a game] を選んでから、[Next] を選びます。
  6. アプリ名と有効なアプリの連絡先メール アドレスを追加します。 ビジネス アカウントがある場合は、それを追加することもできます。
  7. [Create app](アプリの作成) を選択します。
  8. アプリが作成されたら、ダッシュボードに移動します。
  9. [App settings]>[Basic] を選びます。
    1. [App ID]の値をコピーします。 次に [表示] を選択し、[アプリ シークレット] の値をコピーします。 これらの値の両方を使用して Facebook をテナントの ID プロバイダーとして構成します。 [App Secret] は、重要なセキュリティ資格情報です。
    2. [Privacy Policy URL] (プライバシー ポリシーの URL) に URL (https://www.contoso.com/privacy など) を入力します。 ポリシーの URL は、アプリケーションのプライバシーに関する情報を提供するために維持されるページです。
    3. [サービス利用規約 URL] に URL を入力します (例: https://www.contoso.com/tos)。 ポリシーの URL は、アプリケーションの利用規約を提供するために維持されるページです。
    4. [ユーザー データ削除] の URL を入力します (例: https://www.contoso.com/delete_my_data)。 ユーザー データ削除 URL は、自分のデータの削除を要求する手段をユーザーに提供するために維持するページです。
    5. [Category] (カテゴリ) を選びます (たとえば [Business and Pages] (ビジネスとページ))。 Facebook ではこの値が必要ですが、Microsoft Entra ID では使用されません。
  10. ページの下部で、[プラットフォームの追加][Web サイト][次へ] の順に選択します。
  11. [サイトの URL] に、Web サイトのアドレス (たとえば https://contoso.com) を入力します。
  12. [変更の保存] を選択します。
  13. 左側で [Use cases] を選び、[Authentication and account creation] の隣の [Customize] を選びます。
  14. [Facebook Login][Go to settings] を選びます。
  15. [Valid OAuth Redirect URIs] に次の URI を入力します。<tenant-ID> は実際の Microsoft Entra テナント ID、<tenant-name> は実際の Microsoft Entra テナント名に置き換えます。
  • https://login.microsoftonline.com/te/<tenant-ID>/oauth2/authresp
  • https://login.microsoftonline.com/te/<tenant-subdomain>.onmicrosoft.com/oauth2/authresp
  • https://<tenant-name>.ciamlogin.com/<tenant-ID>/federation/oidc/www.facebook.com
  • https://<tenant-name>.ciamlogin.com/<tenant-name>.onmicrosoft.com/federation/oidc/www.facebook.com
  • https://<tenant-name>.ciamlogin.com/<tenant-ID>/federation/oauth2
  • https://<tenant-name>.ciamlogin.com/<tenant-name>.onmicrosoft.com/federation/oauth2
  1. [Save changes] を選び、ページの上部で [Apps] を選んで、先ほど作成したアプリを選びます。
  2. ページの左側で [Use cases] を選び、[Authentication and account creation] の隣の [Customize] を選びます。
  3. [Permissions] の下にある [Add] を選んで、メールのアクセス許可を追加します。
  4. ページの上部にある [Go back] を選びます。
  5. この時点では、Facebook アプリケーションの所有者のみがサインインできます。 アプリを登録したため、Facebook アカウントを使用してサインインできます。 Facebook アプリケーションをユーザーが利用できるようにするには、メニューから、[運用開始] を選択します。 一覧表示されているすべての手順に従って、すべての要件を完了します。 ID をビジネス エンティティまたは組織として確認するため、データ処理の質問とビジネス検証を完了することが必要な場合があります。 詳細については、「メタ アプリ開発」を参照してください。

ID プロバイダーとして Facebook アカウントを構成する

次に、Microsoft Entra 管理センターで入力するか、または PowerShell を使用して、Facebook クライアント ID とクライアント シークレットを設定します。 セルフサービス サインアップが有効になっているアプリでユーザー フローを使用してサインアップすることで、Facebook の構成をテストすることができます。

Microsoft Entra 管理センターで Facebook フェデレーションを構成するには

ヒント

この記事の手順は、開始するポータルによって若干異なる場合があります。

  1. Microsoft Entra 管理センター に少なくとも 外部 ID プロバイダー管理者 としてサインインしてください。

  2. ID>外部ID>すべての ID プロバイダー を参照し、Facebook を選択します。

  3. [クライアント ID] には、前に作成した Facebook アプリケーションのアプリ ID を入力します。

  4. 記録しておいたアプリ シークレット[クライアント シークレット] に入力します。

    [ソーシャル ID プロバイダーの追加] ページを示すスクリーンショット

  5. [保存] を選択します。

PowerShell を使用して Facebook フェデレーションを構成するには

  1. 最新バージョンの Microsoft Graph PowerShell をインストールします。

  2. 次のコマンドを実行します。

    Connect-MgGraph -Scopes "IdentityProvider.ReadWrite.All"
    
  3. サインイン プロンプトで、マネージド グローバル管理者アカウントを使用してサインインします。

  4. 次のコマンドを実行します。

    $params = @{
       "@odata.type" = "microsoft.graph.socialIdentityProvider"
       displayName = "Facebook"
       identityProviderType = "Facebook"
       clientId = "[Client ID]"
       clientSecret = "[Client secret]"
    }
    
    New-MgIdentityProvider -BodyParameter $params
    

    テナントでセルフサービス サインアップを有効にする必要があります。

    Note

    Facebook 開発者コンソールで、作成したアプリのクライアント ID とクライアント シークレットを使用します。 詳細については、New-MgIdentityProvider の記事を参照してください。

Facebook フェデレーションを削除する方法

Facebook フェデレーション セットアップは削除できます。 それを行った場合、Facebook アカウントを使用してユーザー フローを通じてサインアップしたユーザーは、サインインできなくなります。

Microsoft Entra 管理センターで Facebook フェデレーションを削除するには:

  1. Microsoft Entra 管理センター に少なくとも 外部 ID プロバイダー管理者 としてサインインしてください。
  2. [ID]>[External Identities]>[すべての ID プロバイダー] に移動します。
  3. Facebook の行を選び、[削除] を選びます。
  4. [はい] を選択して削除を確定します。

PowerShell を使用して Facebook フェデレーションを削除するには:

  1. 最新バージョンの Microsoft Graph PowerShell をインストールします。

  2. 次のコマンドを実行します。

    Connect-MgGraph -Scopes "IdentityProvider.ReadWrite.All"
    
  3. サインイン プロンプトで、マネージド グローバル管理者アカウントを使用してサインインします。

  4. 次のコマンドを入力します。

    Remove-MgIdentityProvider -IdentityProviderBaseId "Facebook-OAUTH"
    

    Note

    詳細については、「Remove-MgIdentityProvider」を参照してください。

次のステップ