コーポレートエンジニアリング部の宮澤です。
今回はAuth0のEnterprise接続機能を利用してAuth0とOneLoginをSAML連携させる手順を紹介します。
Auth0のEnterprise接続機能について
Auth0のEnterprise接続機能を利用する場合は、プロフェッショナルプラン以上でないと利用できない機能になっています。
本番稼働環境で実装する場合はご利用のプランを確認してください。
トライアル環境の場合は、Enterprise接続機能は利用可能でした。
OneLogin側でSAMLコネクタの作成
OneLoginに管理者アカウントでログインし、管理画面を開き"Applications > Applications"を開き”Add Apps”を押します。
”SAML Custom Connector”で検索を行い、表示された"SAML Custom Connector (Advanced)"を選択します。
OneLogin上の表示名を任意で選択して"Save"を押します。
左メニューの”SSO”を開き、"Issuer URL"、"SAML 2.0 Endpoint (HTTP)"を控え、"X.509 Certificate"については".pem"ファイルをダウンロードしておきます。
※Auth0側の設定で利用します。
Auth0側でEnterprise接続の設定
Auth0にログインし"Authentication > Enterprise"を開き"SAML"の"+"を押します。
"Connection name"には任意の名前を指定します。
"Sign In URL"には先ほど作成したOneLoginコネクタの"SAML 2.0 Endpoint (HTTP)”の値を入力します。
X509証明書はOneLoginからダウンロードした".pem"ファイルを指定します。
設定が完了したら下部の"Create"を押します。
OneLoginのSAMLコネクタへの設定
OneLoginコネクタ画面の"Configration"を開き、以下のように値を設定して"Save"を押します。
項目名 | 入力値 |
Audience (EntityID) | urn:auth0:{Auth0のドメイン名}:{Auth0のEnterpriseConnection名} |
ACS (Consumer) URL Validator* | ^https:\/\/{Auth0のドメイン名}.us.auth0.com\/login\/callback?connection={Auth0のEnterpriseConnection名}$ |
ACS (Consumer) URL* | https://{Auth0のドメイン名}.us.auth0.com/login/callback?connection=={Auth0のEnterpriseConnection名} |
※Auth0のURLはリージョンによって"us.auth0.com"が違う可能性があります。
接続確認
Auth0で作成したEnterprise接続を開き、”Applications”タブを選択後、"Default App"を有効化して左上の"Back to SAML"を押します。
該当するEnterprise接続の"・・・"から"Try"を押します。
正常に認証が完了した場合、以下のデフォルトアプリのページが表示されます。
表示されない場合は、設定を見直して見ましょう。
まとめ
今回はAuth0のEnterprise接続を利用してOneLoginとSAML連携をしました。
Auth0は様々なIDPやアプリケーションと接続できるので、認証基盤としての使い勝手は非常に良さそうだと改めて感じました。