Adobe CommerceとOkta OAuthのシングルサインオン(SSO)統合
概要
このガイドでは、OAuth 2.0およびOpenID Connectプロトコルを使用して、Adobe CommerceとOkta間のシングルサインオン(SSO)を設定する方法について説明します。OktaをIDプロバイダーとして統合することで、ユーザーは既存の組織認証情報を使用してAdobe Commerceストアに安全にログインできます。これにより、個別のログイン情報が不要になり、ユーザー認証が簡素化されます。
この統合により、属性マッピングやロールマッピングといった重要なSSO機能がサポートされ、管理者はユーザーアクセスと権限を効果的に管理できます。また、認証されたユーザーのみがストアにアクセスできるようにすることで、セキュリティ強化にも役立ちます。
このガイドを読み終える頃には、完全に機能するSSO(シングルサインオン)の設定が完了し、ユーザーはOktaの認証情報を使用してAdobe Commerceにスムーズにログインできるようになります。
インストール手順
- コンポーザの使用
- 手動インストール
構成手順
1. miniOrange SSO拡張機能を構成する
- miniOrange Adobe Commerce SSO拡張機能で、[アプリケーション]タブに移動し、 OAuth/OpenIDをクリックして アプリケーション。
- コピー コールバックURL 拡張機能から取得します。これは 構成。
2. OktaをOAuthプロバイダーとして設定する
- まず、に行きます https://www.okta.com/login Okta アカウントにログインします。
- に行きます Okta 管理パネル。 に行く アプリケーション -> アプリケーション.
- 次の画面が表示されます。 クリック アプリ統合の作成
- としてサインイン方法を選択します OIDC - OpenID Connect オプションを選択し、アプリケーションの種類を選択します ウェブアプリケーション をクリックしてください 次へ
- アプリの詳細ページにリダイレクトされます。 入力 アプリ統合 名前と サインインリダイレクト URIminiOrange Adobe Commerce SSO (OAuth/OIDC) の「OAuth プロバイダー」タブから取得できます。 リダイレクト/コールバック URL フィールド。
- 下にスクロールすると、 割り当て セクション。制御されたアクセスオプションを選択し、 チェックしない [フェデレーション ブローカー モードで即時アクセスを有効にする] オプション。 クリック [保存]ボタンを.
- 今、あなたは得るでしょう クライアントの資格情報 (NAIST) および Oktaドメインこれらの資格情報をコピーします Miniorange Adobe Commerce SSO (OAuth/OIDC) 対応するフィールドの拡張機能設定。
注意: Adobe Commerce Okta SSO拡張機能のOktaドメインフィールドにhttps://を入力します。これは一般設定から取得できます。例:(https://dev-32414285.okta.com)。
2.1 アプリ統合をユーザーに割り当てる
- に行く アプリケーションタブ そしてアプリケーションをクリックします。
- まず 割り当て タブには何も表示されないことに注意してください。
- 詳しくはこちら 割り当てます をクリックして 人に割り当てる.
- アプリケーションを同時に複数のユーザーに割り当てる場合は、[ グループに割り当てる [アプリがグループに割り当てられている場合、そのアプリはそのグループ内のすべてのユーザーに割り当てられます]
- 詳しくはこちら 割り当てます ユーザー名の横にある。
- 詳しくはこちら 保存して戻る.
- 詳しくはこちら クリックします.
2.2 idトークンのプロファイル属性
- Okta 管理ダッシュボードで、次の場所に移動します。 セキュリティ -> API.
- SSO アプリケーションを選択し、 edit のアイコンをクリックします。
- に行く クレーム タブを選択して ID トークンオプション。
- をクリックしてください クレームの追加
- を与える 名前 あなたの主張/属性に合わせて選択してください IDトークン トークンタイプのドロップダウンから値を入力します user.$attribute に選出しました。 値 受け取りたい属性に基づいてフィールドを選択します。他の設定はデフォルトのままにして、 創造する
- 表示したいすべての属性に対して同様の手順を実行します。以下のようなリストが表示されます。
- の属性を確認できます。 テスト構成 以下のように出力します。
セットアップが完了しました Okta Adobe Commerce - シングルサインオン(SSO) OktaをOAuthプロバイダーとして使用することで、ユーザーはAdobe Commerce Oktaログインサイトに安全にログインできます。 Okta ログイン 資格情報。
3. Adobe CommerceをOAuthクライアントとして設定する
- ここで、 OAuthプロバイダー名, 顧客ID, クライアントシークレット, 対象領域 そしてエンドポイントを提供しました。
- 詳細は Endpoints 承認のために以下の表を提供する Oktaシングルテナント環境におけるシングルサインオン(SSO) Adobe Commerceサイトへ。
| 範囲: | オープンID |
| エンドポイントを承認します: | https://login.microsoftonline.com/<テナントID>/oauth2/v2.0/承認 |
| アクセストークンエンドポイント: | https://login.microsoftonline.com/<テナントID>/oauth2/v2.0/トークン |
| ユーザー情報の取得エンドポイント: | https://login.windows.net/<テナントID>/openid/ユーザー情報 |
| ログアウト後のカスタム リダイレクト URL:[オプション] | https://login.microsoftonline.com/<テナントID>/oauth2/logout?post_logout_redirect_uri= |
- 詳細は 範囲とエンドポイント 承認のために以下の表を提供する Oktaテナント環境におけるシングルサインオン(SSO) Adobe Commerceサイトへ。
| 範囲: | オープンID |
| エンドポイントを承認します: | https://login.microsoftonline.com/common/oauth2/v2.0/authorize |
| アクセストークンエンドポイント: | https://login.microsoftonline.com/common/oauth2/v2.0/token |
| ユーザー情報の取得エンドポイント: | https://login.windows.net/common/openid/userinfo |
| ログアウト後のカスタム リダイレクト URL:[オプション] | https://login.microsoftonline.com/common/oauth2/logout?post_logout_redirect_uri=<your URL> |
- 以下を行うには、 Save ボタンを押して設定を保存します。
- 以下を行うには、 テスト構成
- 返されるすべての値が表示されます。 OAuthプロバイダー(Okta) Adobe Commerceにテーブル形式でデータを送信する場合、名、姓、メールアドレス、ユーザー名の値が表示されない場合は、OAuthプロバイダーで必要な設定を行い、これらの情報が返されるようにしてください。
注意: 拡張機能のエンタープライズ版では、複数のプロバイダーを設定できます。別のプロバイダーを設定するには、「プロバイダーを追加」ボタンをクリックして、必要なプロバイダーを設定してください。すべてのプロバイダーの設定ガイドは、以下からご覧いただけます。 こちら.
4. マルチサイト設定(*エンタープライズ版で利用可能)
- Oktaアプリケーションを見つけてクリックします 編集 に選出しました。 アクションメニュー.
- ソフトウェアの制限をクリック ストア構成 左側のメニュー.
- ストア構成、SSO を有効にする Web サイトを選択し、[このサイトで SSO を有効にする] オプションをオンにします。
- ログインページに SSO ボタンを表示する: 選択した Web サイトの顧客ログイン ページに SSO ボタンを表示します。
- ユーザーの自動作成: SSOプロセス中に顧客ユーザーがまだ存在しない場合、自動的に作成するオプションがあります。対応するチェックボックスをオンにすると、この機能が有効になります。
- 自動リダイレクト機能: Adobe Commerceのログインページ、またはウェブサイト上の任意のページから、ユーザーをOAuthプロバイダーのログインページに自動的にリダイレクトします。
- 顧客ログインページにアクセスすると、フロントエンドにSSOボタンが表示されます。ボタンをクリックしてSSOをテストしてください。
- Adobe Commerceへのログインが完了しました。
5. 管理者SSO
- 管理者の SSO を有効にする: 管理者ログイン ページに SSO ボタンを表示します。
- 管理者 SSO ボタンのテキスト: 管理者ログイン ページの SSO ボタンに表示されるラベルを設定します (例: Okta 経由でログイン)。
- 管理者ユーザーを自動作成: Adobe Commerceに管理者ユーザーが初めてSSO経由でログインした際に、自動的に管理者ユーザーを作成します。
- 管理者からの自動リダイレクト: 管理者ユーザーを管理者ログイン ページから OAuth プロバイダー ログイン ページに自動的にリダイレクトします。
- バックドアURL: バックドア URL を使用すると、ロックアウトされた場合でも、デフォルトの管理者資格情報を使用して管理ダッシュボードにログインできます。
- 管理者ログインページにアクセスすると、SSOボタンが表示されます。このボタンをクリックすると、管理者としてSSOが開始されます。
- Adobe Commerceに管理者として正常にログインすると、Adobe Commerceのバックエンドダッシュボードにリダイレクトされます。
6. ヘッドレスSSO設定 *これはプレミアム機能です。
- 顧客向けに有効化: このオプションを使用すると、顧客に対してヘッドレス SSO を有効にすることができます。
-
顧客 SSO URL: このURLは、ヘッドレスアプリケーションから顧客のSSOを開始するために使用されます。このSSO URLをヘッドレスアプリケーションに追加してください。
- フォーマットの例: https://<your-domain>/mosso/actions/SendSSORequest?relayState={Store_URL}/headless_store_url/{Headless_URL}&app_name=Okta AD
- {ストアURL}: Adobe CommerceストアのURLを入力してください。
- {ヘッドレスURL}: 顧客トークンを送信するヘッドレス アプリケーションの URL を入力します。
- SSO が成功すると、顧客トークンがヘッドレス URL に送信されます。
具体的な例を挙げますと、以下の通りです。 {Headless_URL}?customer_token=...
- OAuthトークン:このオプションを有効にすると、OAuth プロバイダー (Okta) の JWT トークンが顧客トークンとともに送信されます。
- 顧客トークンの有効期限: 顧客トークンの有効期限(分単位)を設定できます。
- フロントエンド URL をホワイトリストに追加: ここでは、顧客トークンの受信を許可するURLを追加できます。顧客トークンは、ここでホワイトリストに登録されたURLにのみ送信されます。
- 管理者向けに有効化: 顧客と同様に、このオプションは管理者に対してヘッドレス SSO を有効にします。
- 管理者 SSO URL: この URL は、ヘッドレス アプリケーションから管理者 SSO を開始します。
- 管理者トークンの有効期限: 管理者トークンの有効期限(分単位)を設定します。
- フロントエンド URL をホワイトリストに追加: 管理者トークンは、ここでホワイトリストに登録されたURLにのみ送信されます。管理者トークンを受信するURLがリストに登録されていることを確認してください。
7. 属性/カスタムマッピング(オプション)。*これはプレミアム機能です。
- に行きます 属性マッピング 顧客属性マッピングを構成するセクション。
- 有効にする 顧客属性マッピング をクリックして チェックボックス するオプション 顧客属性の更新.
- 次のようなフィールドが表示されます メールアドレス, 名, 苗字 顧客属性マッピングの下。
- ドロップダウンから適切なオプションを選択して、これらのフィールドをマップします。
- さらに属性を追加する必要がある場合は、 + 顧客属性を追加する ボタンをクリックし、適切な属性を選択します。 落ちる.

- 顧客属性 セクションで、アドレス属性マッピングを有効にし、 チェックボックス 更新する 顧客住所属性.
- 次のようなフィールドが表示されます。 ご住所, 郵便番号, 都市, 州/地域、その他 顧客住所マッピング.
- ドロップダウンから適切なオプションを選択して、これらのフィールドをマップします。
- 追加の住所属性を追加する必要がある場合は、 + 住所属性を追加 ボタンをクリックし、ドロップダウンから適切な属性を選択します。
- 管理者属性マッピング セクション、有効にする 管理者属性マッピング 選択 チェックボックス 更新する 管理者属性.
- 次のようなフィールドが表示されます メールアドレス, 名, 苗字 管理属性マッピングの下。
- ドロップダウンから適切なオプションを選択して、これらのフィールドをマップします。
- さらに属性を追加する必要がある場合は、 + 管理者属性を追加 ボタンをクリックし、適切な属性を選択します。 落ちる.
- B2Bマッピング セクションで、B2B 企業マッピングを有効にして、 チェックボックス 更新する B2B企業属性.
- 企業属性: これは、IDプロバイダー(IdP)から提供されるフィールドで、ユーザーの会社名またはIDが含まれています。
- デフォルト会社: IdPデータから一致する企業が見つからない場合、ユーザーはデフォルトの企業に割り当てられます。
- 必要に応じて、該当するAdobe Commerceの顧客企業に対して、IDプロバイダー企業の値を入力してください。
- 例: IDプロバイダーから受信した会社属性値がAdobe CommerceのminiOrangeまたはnewCompanyにマッピングされている場合、SSO経由でログインするユーザーは自動的にそれぞれの会社に割り当てられます。たとえば、IdPの会社属性値がAdobe CommerceのminiOrange会社にマッピングされている場合、ユーザーはminiOrange会社にマッピングされます。
8. グループ/ロールマッピング(オプション)。*これはプレミアム機能です。
- Adobe Commerceは「ロール」という概念を採用しており、サイト所有者がサイト内でユーザーができることとできないことを制御できるように設計されています。ロールマッピングを使用すると、OAuthプロバイダー内の特定のグループのユーザーに特定のロールを割り当てることができます。
- ドロップダウンから、管理者ユーザーと顧客ユーザーの両方のグループ/ロール情報が含まれている ID プロバイダーの属性を選択します。
- 顧客グループマッピング設定では、ストア管理者は、シングルサインオン(SSO)中にIDプロバイダー(IdP)から受信したグループ情報に基づいて、どのAdobe Commerce顧客グループを割り当てるかを定義できます。
- Adobe CommerceがユーザーがSSO経由でログインするたびに顧客グループを更新するようにするには、「SSOでフロントエンドグループを更新する」チェックボックスを有効にしてください。
- IDプロバイダーからグループ情報が返されない場合、または受信したグループが構成済みのマッピングと一致しない場合に、ユーザーに割り当てるAdobe Commerceグループを選択するには、[デフォルトグループ]ドロップダウンを使用します。
- 必要に応じて、対応するAdobe Commerceの顧客グループに対して、IDプロバイダーのグループ値を入力してください。
- IDプロバイダー内の特定のグループに属するユーザーには、SSO実行時にマッピングされたAdobe Commerceグループが自動的に割り当てられます。
- 例: IDプロバイダーからのグループ値がAdobe Commerceの「General」グループにマッピングされている場合、IDプロバイダーでそのグループに属するユーザーは、SSO実行時に「General」顧客グループに割り当てられます。
- Adobe CommerceがユーザーがSSO経由でログインするたびに管理者ロールを更新するようにするには、「SSOでバックエンドロールを更新する」チェックボックスを有効にしてください。
- IDプロバイダーからグループ情報が返されない場合、または受信したグループが構成済みのマッピングと一致しない場合に、ユーザーに割り当てるAdobe Commerceの役割を選択するには、「デフォルトグループ」ドロップダウンを使用します。
- 必要に応じて、対応するAdobe Commerce管理者ロールに対して、IDプロバイダーグループの値を入力してください。
- IDプロバイダー内の特定のグループに属するユーザーには、SSO実行時にマッピングされたAdobe Commerceグループが自動的に割り当てられます。
- 例: IDプロバイダーからのグループ値がAdobe CommerceのGeneralグループにマッピングされている場合、IdPでそのグループに属するすべてのユーザーには、SSO時にGeneral Adminロールが割り当てられます。
その他のリソース
Get in Touch
までご連絡ください magentosupport@xecurify.comまた、弊社のチームがAdobe Commerce SSO(OAuth/OIDC)拡張機能の設定をサポートいたします。お客様のご要望に応じて、最適なソリューション/プランの選択をお手伝いいたします。
