My Home NW Lab

逸般の誤家庭のネットワーク

Duo Securityを用いたThousandEyesのSingle Sign-On設定 (SP-Initiated & IdP-Initiated)

Duo Securityを用いてThousandEyesでSingle Sign-On (SSO)を実現するための設定方法を整理します。

Single Sign-Onの動作概要

ThousandEyesとDuo Securityの組み合わせでは、SP-InitiatedIdP-Initiatedに対応しています。 ログイン方式によってURLが異なるので留意してください。

  • 通常のThousandEyesアカウント (UsernameとPassword)によるログイン時のURL
    https://app.thousandeyes.com/login

  • SP-Initiated時のログインURL
    https://app.thousandeyes.com/login/sso

  • IdP-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)が起点になります。

SP-Initiatedの概要図 (User視点の動作)

IdP-Initiatedの概要図 (User視点の動作)

IdP-InitiatedではIdPのSingle Sign-On用ポータル (本例ではDuo Central)が起点になります。

IdP-Initiatedの概要図 (User視点の動作)

設定要素

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の設定の一部は共通化しております。

ThousandEyesとDuo SecurityのSingle Sign-Onの設定要素

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

Single Sign-On (SSO) - ThousandEyes Documentation (2022年04月30日時点)

本記事の執筆時点 (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 の名称を適宜修正します。本記事ではデフォルト名のまま進めます。

    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のパラメータの指定

  • Application: Generic SAML Service ProviderSAML Metadata より Download XML ボタンを押下して、XMLファイルを保存します。この後の手順でThousandEyes PortalMetadata File の設定でそのXMLファイルをアップロードします。

    Application: Generic SAML Service ProviderのXMLファイルのダウンロード

ThousandEyes PoralでSingle Sign-Onの有効化

  • ThousandEyes Portalでメニュー: Account Settings > Organization Settings に移動してセクション: Setup Single Sign-On の設定を行います。

    1. Enabled Single Sign-On にチェックをつけて有効化します。
    2. Configuration TypeMetadata File に指定します。
    3. 事前にDuo Security側の作業で入手しておいたApplication: Generic SAML Service ProviderXMLファイルを、Metadata File にアップロードします。

    ThousandEyes PoralでSetup Single Sign-Onの設定

  • セクション: 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側で制御するため、適切な権限を割り当ててください。

    Single Sign-On対象Userの追加とRoleの割り当て

SP-Initiatedの動作確認テスト

  • ThousandEyesのSP-Initiated用のログインURL: https://app.thousandeyes.com/login/sso を開いて、実際にSIngle Sign-Onを試して動作確認を行います。

    ThousandEyes PortalへのSP-Initiatedでのログイン例

  • 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をリネーム済みの場合は対象の名称が変わるので留意してください。

    Duo Centralに表示されるApplication Tileの追加

IdP-Initiatedの動作確認テスト

  • Duo CentralのログインURLを開いて、実際にSingle Sign-Onを試してIdP-Initiatedの動作確認を行います。

    ThousandEyes PortalへのIdP-Initiatedでのログイン例