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

OpenId Connectを使用してOktaでLiferay認証を構成する

このチュートリアルでは、OpenID Connect を使用して、アイデンティティ プロバイダー (IdP) である Okta を環境に統合するために必要な基本的な手順について説明します。

前提条件

  • Okta Dev アカウント
  • Liferay DXP環境
  • Okta管理コンソールへの管理者アクセス権を持つユーザー
  • Liferayのコントロールパネルへの管理者権限を持つユーザー

Oktaの設定

  1. Okta Dev にログインし、 アプリケーションアプリケーションの追加アプリ統合の作成に移動します。

  2. サインイン方法で OIDC - OpenID Connectを選択し、アプリケーションの種類で Web アプリケーションを選択します。

    新しいOIDCアプリ統合を作成する

  3. アプリ統合名として「 Liferay DXP - OIDC 」と入力します。

  4. 付与タイプには、 認証コードリフレッシュトークンを選択します。

  5. サインイン リダイレクト URI として https://[your_instance_url]/c/portal/login/openidconnect を入力します。

  6. サインアウトリダイレクト URI として https://[your_instance_url] を入力します。

  7. 割り当ての下で、 今はグループの割り当てをスキップを選択します。

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

  9. [割り当て] タブで、このアプリケーションにユーザーを割り当てます。

    引き続き Liferay 管理者としてログインできるように、必ず自分自身のユーザー アカウントを割り当ててプロビジョニングしてください。

エンドポイントURLの取得

  1. Okta Dev アカウントで、サイドパネルに移動し、 セキュリティAPIに移動します。

  2. 「認証サーバー」タブで、 default という名前のサーバーを見つけてクリックし、その構成を編集します。

    メタデータURIを見つけるためにデフォルトの認可サーバーを編集する

  3. “メタデータURI” リンクをクリックします。通常は次のようになります: https://dev-123456.okta.com/oauth2/default/.well-known/oauth-authorization-server

        issuer: "https://dev-123456.okta.com/oauth2/default"
        authorization_endpoint: "https://dev-123456.okta.com/oauth2/default/v1/authorize"
        token_endpoint: "https://dev-123456.okta.com/oauth2/default/v1/token"
        registration_endpoint: "https://dev-123456.okta.com/oauth2/v1/clients"
        jwks_uri: "https://dev-123456.okta.com/oauth2/default/v1/keys"
    
  4. これにより、 /userinfo エンドポイントを除く必要な URL が提供されます。 ベース URL と認証サーバー名を組み合わせることで、そのエンドポイントを構築できます。 たとえば、 https://dev-123456.okta.com/oauth2/default/v1/userinfoです。

Liferay OIDC 設定

  1. DXP インスタンスで、 グローバル メニューコントロール パネルインスタンス設定セキュリティSSOに移動します。

  2. OpenID Connect プロバイダー接続 タブに移動して、新しい接続エントリを追加します。

  3. 以下の表に示すように、 エンドポイント URLで見つかったデータをフィールドに入力します。

    項目データ
    プロバイダー名Okta OIDC
    範囲scopes_supported
    認証エンドポイント認証エンドポイント URL
    発行者URL発行者 URL
    JWKS URIjwks_uri URL
    サブジェクトタイプsubject_types_supported
    トークン エンドポイントトークンエンドポイント URL
    ユーザー情報エンドポイントエンドポイントURLの取得の手順4に従います。
    OpenID Connect クライアントIDOktaのアプリケーションの 一般 タブの下
    OpenID Connect クライアントシークレットOktaのアプリケーションの 一般 タブの下

完了したら、OpenID Connect を有効にする必要があります。 OpenId Connect を有効にするには:

  1. グローバル メニューコントロール パネル構成インスタンス設定に移動します。

  2. セキュリティ セクションの SSO をクリックします。

  3. OpenID Connect タブに移動し、 有効 チェックボックスをクリックして、 保存をクリックします。

    OpenID接続を有効にするには、「有効」チェックボックスをクリックします。

入力値の検証

  1. Liferay DXPインスタンスを起動する

  2. サインイン ボタンをクリックし、 OpenId Connectを選択します。

    サインインボタンをクリックし、OpenId Connectを選択します。

  3. リストから クライアントから Okta OIDC を選択します。

    リストからOkta OIDCクライアントを選択します

  4. Okta アカウントでサインインします。

    Oktaアカウントでサインイン

さいごに

  このソリューション チュートリアルは正常に完了しました。

ヒントとトラブルシューティング

サインインとサインアウトのリダイレクト URI

下の画像のようなエラーが発生した場合は、サインインおよびサインアウトのリダイレクト URI が適切なパスとハイパーテキスト転送プロトコル (HTTP または HTTPS) を使用して Okta で正しく構成されていることを確認してください。 これらは、作成したアプリケーション → 一般 タブ → 一般設定ログイン セクションに移動すると、Dev Okta アカウントで見つけることができます。

リダイレクトURIでhttpsを使用すると400エラーが発生する

メールアドレスを確認する

デフォルトでは、新規ユーザーは初回ログイン時にメールアドレスを確認する必要があります。 この要件を無効にするには、Liferay DXP で “[知らない人にメールアドレスの確認を要求する]” チェックボックスをオフにします。 コントロール パネルインスタンス設定プラットフォームユーザー認証 に移動して、チェックボックスをオフにします。 ただし、電子メールのバリデーションを有効にしておきたい場合は、インストール時にメールサーバーへの接続設定が必要です。

メールアドレスを確認する