3.4.7.3.7 ソーシャル・サインインの編集

インスタンスのソーシャル・サインイン認証スキームを編集します。

ソーシャル・サインインでは、Google、Facebook、その他のソーシャル・ネットワークを使用する認証のほか、OpenID ConnectまたはOAuth2標準をサポートしているエンタープライズ・アイデンティティ・プロバイダによる認証がサポートされます。

ソーシャル・サインインを編集するには、次の手順を実行します。

  1. APEX管理サービスにサインインします。
  2. 「インスタンスの管理」をクリックします。
  3. 「インスタンスの設定」で、「セキュリティ」をクリックします。
  4. 「開発環境認証スキーム」までスクロールします。
    「ステータス」列に、「カレント」と指定されている認証スキームが示されます。
  5. 「ソーシャル・サインイン」を見つけ、「編集」をクリックします。
    「スキームの編集」ページが表示されます。
  6. 「カレント・スキームにする」をクリックして、アプリケーションでこの認証スキームを使用してユーザーを識別および検証するようにします。
  7. 「認証スキームの編集」の下で、次の手順を実行します。
    • PL/SQLコード - 認証前および認証後のエントリ・ポイント用のプロシージャを含む、コードのPL/SQL無名ブロックを入力します。パフォーマンスを向上させるために、このコードをデータベース内のPL/SQLパッケージに格納することもできます。
    • 認証前のプロシージャ名 - ログイン・ページの送信後および資格証明の検証の直前に実行するプロシージャの名前を指定します。このプロシージャは、PL/SQLコード属性で、またはデータベース内で定義できます。

      ユーザー資格証明チェックがAPEXの外部で実行される認証スキームでは、通常、認証前プロシージャは実行されません。例として、HTTPヘッダー変数、Oracle Application Server Single Sign-On、およびAPEX_AUTHENTICATION.LOGINではなくAPEX_AUTHENTICATION.POST_LOGINを使用するカスタム認証スキームなどがあります。

    • 認証後のプロシージャ名 - 認証ステップ(ログイン資格証明の検証)の後にAPEXLOGINプロシージャによって実行されるプロシージャの名前を指定します。LOGINプロシージャでは、このコードは、Cookieの設定やセッションの登録などの通常作業の実行後(ただし、目的のアプリケーション・ページにそれをリダイレクトする前)に実行されます。このプロシージャは、PL/SQLコード属性で、またはデータベース内で定義できます。
  8. 「OAuth2資格証明」の下で、次の手順を実行します。
    • クライアントID - 認証プロバイダのクライアントIDを入力します。
    • クライアント・シークレット - 認証プロバイダのクライアント・シークレットを入力します。
    • クライアント・シークレットの確認 - 認証プロバイダのクライアント・シークレットを入力します。
  9. 「認証スキーム属性」の下で、次の手順を実行します。

    ヒント:

    属性についてさらに学習するには、フィールドレベル・ヘルプを参照してください。
    • 認証プロバイダ - プロバイダを選択します。
    • 検出URL - OpenID Connectプロバイダの検出URLを入力します。次に例を示します。

      https://accounts.example.com/.well-known/openid-configuration

    • 有効範囲 - ログインしているユーザーに対して要求する権限をカンマ区切りのリストで入力します。使用可能な値は、認証プロバイダによって異なります。OpenID ConnectおよびGoogleの場合、APEXによって自動的にopenidスコープが追加されます。認証プロバイダは、これらの権限に基づいてユーザー属性を返します。認証後プロシージャにより、APEX_JSON.GET_%ファンクションを使用してこれらの属性を処理できます。
    • 認証URIパラメータ - 認証URIのオプションのパラメータを入力します。サポートされているパラメータについては、認証プロバイダのドキュメントを参照してください。
    • ユーザー名属性 - ユーザー名を含む属性を入力します。サポートされている属性については、認証プロバイダのドキュメントを参照してください。
    • ユーザー名の検証 - 有効にすると、APEXで属性#username#_verifiedが検索されます(たとえば、ユーザー名属性がemailの場合はemail_verified)。これがfalseに設定されている場合、そのユーザー名は受け入れられません。
    • 追加ユーザー属性 - 追加のユーザー・データ属性をカンマ区切りのリストで入力します。サポートされている属性については、認証プロバイダのドキュメントを参照してください。
    • ログアウトURL - この属性を使用して、認証プロバイダからログアウトするためのURLを指定します。OpenID Connectの場合、APEXでは、end_sessionエンドポイントが「検出URL」で定義されていれば、それが自動的に使用されます。その他の場合は、URLで#ID_TOKEN#および#REDIRECT_URI#を使用して、ログイン時に返されたIDトークンと、インスタンス上の/apexへの完全なURL (https://www.example.com/apex/apexなど)に置き換えることができます。なお、リダイレクトURIは、多くの場合、認証プロバイダに登録する必要があります。
  10. 変更を保存するには、「変更の適用」をクリックします。