Facebook 認証
項目一覧
Overview
Facebook 認証プロバイダーは、ユーザーが付属の Facebook アプリケーションを通じて既存の Facebook アカウントでログインすることを可能にします。 ユーザーがログインすると、Facebook は Atlas App Services に OAuth2.0 アクセス トークン を使用して Atlas App Services を提供します ユーザーのApp Services はトークンを使用してユーザーを識別し、ユーザーに代わって Facebook API から承認されたデータにアクセスします。 Facebook ログインの詳細については、「 アプリ用の Facebook ログイン 」を参照してください。 。
次の図は、OAuth ロジック フローを示しています。
構成
App Services UI から Facebook 認証プロバイダを有効にして設定するには、 Authenticationページから Facebookを選択します。
App Services CLIを使用して Facebook 認証プロバイダを有効化・設定するには、 /auth/providers.json
でそのための構成オブジェクトを定義します。
Facebook プロバイダーの構成は次の形式になります。
{ "oauth2-facebook": { "name": "oauth2-facebook", "type": "oauth2-facebook", "disabled": <boolean>, "config": { "clientId": <string> }, "secret_config": { "clientSecret": <string> }, "metadata_fields": [<document>, ...], "redirect_uris": [<string>, ...], "domain_restrictions": [<string>, ...] } }
Facebook 認証プロバイダには、次の構成オプションがあります。
フィールド | 説明 | |
---|---|---|
Client ID config.clientId | 必須。 Facebook アプリのApp ID 。 Facebook アプリの設定とApp IDの検索の詳細については、「 Facebook アプリの設定 」を参照してください。 | |
Client Secret secret_config.clientSecret | 必須。 Facebook アプリのApp Secretを保存するSecretの名前。 Facebook アプリの設定とApp Secretの検索の詳細については、「 Facebook アプリの設定 」を参照してください。 | |
Metadata Fields metadata_fields | 任意。 アプリケーションが Facebook Graph API に要求する認証済みユーザーを説明するフィールドのリスト。 すべてのメタデータ フィールドはデフォルトでは省略されており、フィールドごとに必須になる場合があります。ユーザーは、各必須フィールドにアクセスする権限をアプリに明示的に付与する必要があります。メタデータ フィールドが必須で、特定のユーザーに存在する場合、そのフィールドはユーザー オブジェクトに含まれます。 インポート/エクスポートした構成ファイルからのメタデータ フィールドを要求するには、フィールドのエントリを
| |
Redirect URIs redirect_uris | Web アプリケーションに必要です。許可されたリダイレクト URIのリスト。 ユーザーがFacebook での認証プロセスを完了すると、App Services は指定されたリダイレクト URI にリダイレクトし、リダイレクト URI が指定されていない場合は、ユーザーが認証リクエストを開始した URL にリダイレクトします。 Atlas App Services は、プロトコルと後続のスラッシュすべてを含め、このリストのエントリと完全に一致する URI にのみユーザーをリダイレクトします。 | |
Domain Restrictions domain_restrictions | 任意。ユーザーアカウント用に承認されたドメインのリスト。 指定した場合、プロバイダーは Facebook でユーザーのプライマリメールアドレスのドメインを確認し、ドメインがこのリストのエントリと一致する場合にのみ認証を許可します。 たとえば、 注意ドメイン制限を指定した場合は、 Metadata Fields設定でメール アドレス フィールドも必須にする必要があります。 |
Facebook アプリを設定する
Facebook 認証プロバイダーには Facebook アプリ が必要 認証とユーザー権限を管理します。次の手順では、アプリの作成、Facebook ログインの設定、アプリに接続するためのプロバイダーの構成について説明します。
Facebook アプリの作成
Facebook の 公式ガイドに 従う 新しい Facebook アプリを作成します。
Facebook ログインの有効化
アプリのDashboardビューから、 Facebook Loginカードを見つけて [ Set Up ] をクリックします。 各プラットフォームのクイックスタート ガイドのリストが表示されます。 プラットフォームのガイドに従って、Facebook ログインを有効にします。
注意
App Services ウェブ アプリケーションでは、Facebook 認証プロバイダーを使用するために Facebook SDK をインストールする必要はありません。 Facebook ログイン をウェブ アプリケーションに含めている場合は、Facebook SDK for JavaScript の設定に関連するクイックスタートをスキップできます。
有効な OAuth リダイレクト URI として App Services を追加する
ユーザーが Facebook アプリのログイン フローを完了したら、App Services にリダイレクトする必要があります。 Facebook ログインでは、ユーザーは事前承認された URI リストにのみリダイレクトできます。
Facebook Login > Settingsページから、アプリケーションの配置リージョンに対応する Atlas App Services 認証コールバック URL をValid OAuth Redirect URIsのリストに追加します。 以下の表は、各リージョンのコールバック URL の一覧です。
リージョン | App Services 認証コールバック URL | |
---|---|---|
Global |
| |
Virginia ( us-east-1 ) |
| |
Oregon ( us-west-2 ) |
| |
Ireland ( eu-west-1 ) |
| |
Frankfurt ( eu-central-1 ) |
| |
Mumbai ( ap-south-1 ) |
| |
Singapore ( ap-southeast-1 ) |
| |
Sydney ( ap-southeast-2 ) |
|
Facebook 認証プロバイダの設定
Facebook アプリを App Services に接続するには、 Settings > Basicページで Facebook アプリのApp IDとApp Secretの値を見つけ、認証プロバイダの構成に追加します。
例
Facebook 認証を使用して登録およびログインする方法を示すコードの例については、Realm SDK のドキュメントを参照してください。