Duo Securityを用いてThousandEyesでSingle Sign-On (SSO)を実現するための設定方法を整理します。
Single Sign-Onの動作概要
ThousandEyesとDuo Securityの組み合わせでは、SP-InitiatedとIdP-Initiatedに対応しています。 ログイン方式によってURLが異なるので留意してください。
通常のThousandEyesアカウント (UsernameとPassword)によるログイン時のURL
https://app.thousandeyes.com/loginSP-Initiated時のログインURL
https://app.thousandeyes.com/login/ssoIdP-Initiated時のログインURL
IdPによって異なります。Duo Security (Duo Central)の場合はhttps://sso-****.sso.duosecurity.com/central/
のようなテナント専用のURLが払い出されます。
SP-Initiatedの概要図 (User視点の動作)
SP-InitiatedではThousandEyes PortalのSingle Sign-On用のログイン画面 (https://app.thousandeyes.com/login/sso)が起点になります。
IdP-Initiatedの概要図 (User視点の動作)
IdP-InitiatedではIdPのSingle Sign-On用ポータル (本例ではDuo Central)が起点になります。
設定要素
ThousandEyesとDuo Securityの組み合わせにおけるSingle Sign-Onの設定要素は、下記の4つの小項目で成り立っています。
ThousandEyes
- Setup Single Sign-On設定
- New Users設定
Duo Security
- Application設定
- Duo Central (Add tile)設定
SP-InitiatedとIdP-Initiatedの設定の一部は共通化しております。
設定の流れとしては必然的にSP-Initiatedから設定を行います。必要に応じてIdP-Initiatedの設定を行ってください。
設定の方針
本記事の執筆時点 (2023年04月時点)では、ThousandEyesの設定に特化したApplicationがDuo Securityに用意されていないため、汎用的な設定テンプレートである Generic SAML Service Provider
のApplicationを用います。
ThousandEyesのSingle Sign-On設定の情報源
ThousandEyesのSingle Sign-On関連の情報は、下記のセクションを参照してください。
Single Sign-On (SSO) - ThousandEyes Documentation
https://docs.thousandeyes.com/product-documentation/user-management/sso
本記事の執筆時点 (2023年04月時点)ではThousandEyesのSingle Sign-On関連のドキュメントにDuo Securityに関する記述はありません。
そのため Single Sign-On (SSO)
のセクションの中から How to Configure Single Sign-On (SSO): Metadata
を参考にしております。
How to Configure Single Sign-On (SSO): Metadata - ThousandEyes Documentation
https://docs.thousandeyes.com/product-documentation/user-management/sso/how-to-configure-single-sign-on-with-metadata
なお、ドキュメントに記載があるように、Single Sign-On対象のUserはThousandEyesのプラットフォーム上に登録されている必要があります。 既存のAccount Groupに所属/招待していないと、対象メール アドレスがログイン可能なAccount Groupを特定できないためだと思われます。
- SAML Assertion NameID (unspecified or emailAddress format): The email address of the user to be authenticated (must be already a registered user in the ThousandEyes platform).
- If a valid email address (as registered in ThousandEyes) is not found in the NameID field, the assertion will be parsed for additional name claims.
設定方法
Duo SecurityのAdmin PanelでApplicationの追加
Duo SecurityのAdmin Panelでメニュー:
Application > Protect an Application
に移動して、Generic SAML Service Provider
のApplicationを探してProtect
ボタンを押下します。Application:
Generic SAML Service Provider
の名称を適宜修正します。本記事ではデフォルト名のまま進めます。Application:
Generic SAML Service Provider
の下記のパラメータを指定してからSave
ボタンで保存します。設定項目 設定値 Entity ID https://app.thousandeyes.com
Assertion Consumer Service (ACS) URL https://app.thousandeyes.com/login/sso/acs
Application:
Generic SAML Service Provider
のSAML Metadata
よりDownload XML
ボタンを押下して、XMLファイルを保存します。この後の手順でThousandEyes PortalのMetadata File
の設定でそのXMLファイルをアップロードします。
ThousandEyes PoralでSingle Sign-Onの有効化
ThousandEyes Portalでメニュー:
Account Settings > Organization Settings
に移動してセクション:Setup Single Sign-On
の設定を行います。Enabled Single Sign-On
にチェックをつけて有効化します。Configuration Type
をMetadata File
に指定します。- 事前にDuo Security側の作業で入手しておいたApplication:
Generic SAML Service Provider
のXMLファイルを、Metadata File
にアップロードします。
セクション:
Setup Single Sign-On
の設定が完了したら忘れずにSave
ボタンを押下して設定を保存します。
ThousandEyes PoralでNew Usersの設定 (Userの追加)
ThousandEyes Portalでメニュー:
Account Settings > Users and Roles
に移動してUsers
タブを開きます。New Users
ボタンを押下してSingle Sign-Onの対象となるUserを追加します。Roles
はIdPであるDuo Security側ではなくThousandEyes側で制御するため、適切な権限を割り当ててください。
SP-Initiatedの動作確認テスト
ThousandEyesのSP-Initiated用のログインURL: https://app.thousandeyes.com/login/sso を開いて、実際にSIngle Sign-Onを試して動作確認を行います。
SP-Initiatedの設定だけであれば、本手順までで完了です。IdP-Initiatedの設定も行う場合は次の手順に進んでください。
Duo SecurityのAdmin PanelでDuo Central (Add tile)の設定
Duo SecurityのAdmin Panelでメニュー:
Single Sign-On > Duo Central
に移動してTiles
タブを開きます。そして、Add tile
ボタンからApplication TileとしてGeneric SAML Service Provider - Single Sign-On
を追加します。本設定でDuo CentralにTileが追加されてIdP-Initiatedができるようになります。事前にApplicationをリネーム済みの場合は対象の名称が変わるので留意してください。
IdP-Initiatedの動作確認テスト
Duo CentralのログインURLを開いて、実際にSingle Sign-Onを試してIdP-Initiatedの動作確認を行います。