Using OAuth 2.0
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

OAuth 2のスコープ

OAuth 2.0では、アプリケーションはユーザーデータの制限されたサブセットへのアクセスを許可されます。 これらはスコープと呼ばれます(Liferayスコープと混同しないでください)。 これらは 2 つの方法で作成できます。

  • 管理者は、スコープのサービス アクセス ポリシーを作成できます。

  • 開発者は JAX-RS エンドポイントを作成できます。 デフォルトでは、JAX-RS エンドポイントは、サポートする HTTP 動詞に基づいてスコープを生成します。 特殊なアノテーションは、この動作をオーバーライドし、特定のスコープを登録します。

JSONWSサービスのスコープの作成

スコープを作成する最も一般的な方法は、プレフィックス OAUTH2_が付いた サービス アクセス ポリシー を作成することです。 この命名規則により、ポリシーはOAuthアプリケーションの設定画面にスコープとして表示されます。

たとえば、アプリケーションにユーザーのメールアドレスのプロフィール情報を取得するためのアクセス権を与えるには、

  1. グローバル メニュー (Global Menu icon) を開き、 コントロール パネルセキュリティサービス アクセス ポリシーに移動します。

  2. [新規] をクリックし、以下の情報に従ってポリシーを作成します。

    項目
    名前OAUTH2_ユーザープロファイル
    有効True
    デフォルトFalse
    タイトル個人ユーザーデータを読み取りを許可
    サービスクラスcom.liferay.portal.kernel.service.UserService
    メッソド名getCurrentUser

    サービス アクセス ポリシーは、OAuth 2.0 アプリケーションのスコープを定義します。

    このポリシーはデフォルトのポリシーではなく、UserServiceの1つのメソッドにのみアクセス権を付与することに注意してください。 これは、サービスビルダーによって生成されたJSONWS Webサービスです。 インストールで利用可能なすべてのサービスのリストは、次の URL で確認できます: http://[host]:[port]/api/jsonws/

  3. グローバル メニュー (Global Menu icon) を開き、 コントロール パネルセキュリティOAuth2 管理に移動します。

  4. フラグメントレンダラーを選択します。

    ポリシーを作成し、プレフィックスとして OAUTH2_を付ける場合、そのポリシーは スコープ タブに表示されます。

    適切なプレフィックスを使用して名前が付けられたスコープが、アプリケーション設定の[Scopes]タブに表示されます。

  5. 新しく作成されたスコープは、 PORTAL SERVICESの下にあります。 チェックボックスを選択し、 保存をクリックします。

個人ユーザーデータを読み取るという別のスコープもあります。 これは、Liferay に付属する数多くのすぐに使用できるスコープの 1 つです。

認証ページの作成

このステップはオプションです。 ユーザーは自分のアカウントへのアクセスを承認するためのインターフェイスを必要とし、1つは自動的に提供されます。 ただし、ページをカスタマイズしたい場合は、サイトに認証ページを作成できます。

  1. グローバル メニュー (Global Menu) を開き、 コントロール パネルインスタンス設定セキュリティOAuth 2承認画面に移動します。

    この画面には、次のデフォルト値を持つ承認画面の URL フィールドが表示されます: /?p_p_id=com_liferay_oauth2_provider_web_internal_portlet_OAuth2AuthorizePortlet&p_p_state=maximized。 内部ポートレットに相当します。

    OAuth 2 承認画面を構成します。

  2. 承認画面の希望の URL を設定します (例: /authorize)。

  3. サイトに移動し、 サイト メニュー (Site Menu) を開きます。 次に、 サイトビルダーページに移動します。

  4. 新規 をクリックし、 ページを選択します。

    Liferay DXP 7.3 以前の場合は、プライベートページを作成します。 認証されたユーザーのみがプライベート ページにアクセスできます。

  5. [フルページアプリケーション]タイプを選択します。

  6. ステップ2で設定したのと同じ名前をページに付けます。

  7. 追加をクリックします。

  8. メニュー表示から非表示 チェックボックスをオンにします。 このページをサイトナビゲーションに表示させたくありません。

  9. レイアウト セクションで、フル ページ アプリケーション ドロップダウンから アプリケーション承認リクエスト を選択します。

  10. URL セクションで、フレンドリー URL が手順 2 で構成した URL と一致していることを確認します。

  11. [保存]をクリックします。

デフォルトまたはカスタム UI を使用して認証プロセスを実行できるようになりました。