SSO技術要件
技術要件の概要
シングルサインオン(SSO)とは、サードパーティがユーザーを認証したうえで、クアルトリクスシステムへのアクセスを許可する仕組みです。クアルトリクスが対応しているのは、Google OAuth 2.0、Central Authentication Service(CAS)、Lightweight Directory Access Protocol(LDAP)、Security Assertion Markup Language(SAML)の4タイプのSSO認証です。各タイプによって、サードパーティが特定のサーバー環境を保持している必要があります。たとえば、CASによるSSO認証では、サードパーティがCASサーバーを保持していることが前提となります。
このページでは、満たす必要のある技術的要件について説明します。これらの設定は、ITチームとともに構成する必要があります。その後、設定を必ずクアルトリクスのSSOサポートチームに伝えるようにしてください。
Google OAuth 2.0
Google OAuth 2.0は、クアルトリクスプラットフォームへのユーザー認証に使用できる認可フレームワークです。Google OAuth 2.0をサードパーティ認証として構成するには、プラットフォームにアクセスするユーザーがGoogleアカウントを持っている必要があります。
以下の設定パラメーターを指定する必要があります:
- 有効なメールドメイン
- ログインのたびにユーザーのメールアドレスの認証先として利用できるよう、特定のメールドメインを指定しておく必要があります。
 
 
Google OAuth 2.0に対して認証を行う際にクアルトリクスが受け取るのは、ユーザーのGoogleアカウントに関連づけられたメールアドレスのみです。このメール情報がクアルトリクスの[ユーザー名]、[名]、[姓]、[メールアドレス]の各フィールドに反映されます。
[有効なメールドメイン]が提供されると、クアルトリクスはサードパーティとGoogle OAuth 2.0統合の設定作業を行うことができます。
Lightweight Directory Access Protocol(LDAP)
Lightweight Directory Access Protocol(LDAP)は、サードパーティがユーザー認証を行う際に利用できるディレクトリサービスです。クアルトリクスでは、ユーザーがクアルトリクスプラットフォームにログインを試みた際に自動でLDAPサーバーに対する認証を行うように設定することができます。LDAPとの統合を設定するには、サードパーティがLDAPv3サーバーを稼働させていることが前提となります。
以下の設定パラメーターを指定する必要があります:
- LDAPサーバーホスト名:サーバーのIPアドレスまたはサーバー名。
 - LDAPサーバーポート:クアルトリクスがサーバーとの通信に使用するポート。
 - ベース識別名(DN):例:
o=organization - バインド識別名:検索用バインド識別名またはバインド識別名ユーザー。LDAPサーバーが未認証の検索を許可している場合は不要です。
 - バインドパスワード:これはLDAPサーバーが未認証の検索を許可している場合は不要です。
 - 認証フィルターパラメーター:例:
uid=%username% - ログアウトリダイレクトURL:クアルトリクスでは、ログアウト時にユーザーのログインセッションをクリアするためのログアウトリダイレクトURLが必要です。ログアウトリダイレクトURLが指定されていない場合、クアルトリクスはhttps://qualtrics.com、または別のご希望のURLにユーザーをリダイレクトすることができます。だたしその場合、ユーザーのログインセッションはクリアされず、ユーザーは[戻る]ボタンをクリックするかログインページに戻ることでただちに再ログインできます。
 - LDAP属性
- 必須:
- メールアドレスのフィールド属性(例:mail)
ヒント:この属性の値は、メールアドレスの形式である必要があります。たとえば、value@email.comなどです。
 
 - メールアドレスのフィールド属性(例:mail)
 - 任意:
- 名のフィールド属性(例:firstname)
 - 姓のフィールド属性(例:sn)
 - ユーザータイプのマッピング属性
 - 部署のマッピング属性
 - グループのマッピング属性
 - CXダッシュボードのメタデータ属性
 - CXダッシュボードの自動役割登録属性
 
 
 - 必須:
 
上記の情報が提供されたら、クアルトリクスはサードパーティとLDAP統合の設定作業を行うことができます。
Central Authentication Service(CAS)
Central Authentication Service(CAS)はエンタープライズ向けのシングルサインオンサービスであり、JA-SIG CASによってサポートされています。CASについての詳細は、https://www.apereo.org/projects/casを参照してください。クアルトリクスシステムはCASクライアントとして機能し、ユーザーがCAS経由で認証を行ってクアルトリクスシステムにログインすることを可能にします。CAS SSOを設定するには、サードパーティがCAS 2.0以降のプロトコルを使用してCASサーバーを稼働させていることが前提となります。
以下の設定パラメーターを指定する必要があります:
- CASサーバーホスト名:サーバー名。
 - CASサーバーポート:クアルトリクスがサーバーとの通信に使用するポート。
 - ホスト上のCASシステムへのURI
 - ログアウトリダイレクトURL:クアルトリクスでは、ログアウト時にユーザーのログインセッションをクリアするためのログアウトリダイレクトURLが必要です。ログアウトリダイレクトURLが指定されていない場合、クアルトリクスはhttps://qualtrics.com、または別のご希望のURLにユーザーをリダイレクトすることができます。だたしその場合、ユーザーのログインセッションはクリアされず、ユーザーは[戻る]ボタンをクリックするかログインページに戻ることでただちに再ログインできます。
 
以下のパラメーターは、SAML 1.1をサポートするバージョンのCASを使用しているかどうかによって異なります。
- SAML 1.1がサポートされていない場合:CASユーザー名がクアルトリクスの[ユーザー名]、[メールアドレス]、[名]、[姓]の各フィールドに反映されます。
 - SAML 1.1がサポートされている場合:次の設定パラメーターも指定する必要があります:
- 必須:
- メールアドレスのフィールド属性(例:mail)
ヒント:この属性の値は、メールアドレスの形式である必要があります。たとえば、value@email.comなどです。
 
 - メールアドレスのフィールド属性(例:mail)
 - 任意:
- 名のフィールド属性(例:firstname)
 - 姓のフィールド属性(例:sn)
 - ユーザータイプのマッピング属性
 - 部署のマッピング属性
 - グループのマッピング属性
 - CXダッシュボードのメタデータ属性
 - CXダッシュボードの自動役割登録属性
 
 
 - 必須:
 
上記の情報が提供されたら、クアルトリクスはサードパーティとCAS統合の設定作業を行うことができます。
Security Assertion Markup Language (SAML)
Security Assertion Markup Language(SAML)は、セキュリティドメイン間、すなわちアイデンティティプロバイダー(アサーションの発行者)とサービスプロバイダー(アサーションの消費者)の間で、認証および認可データを交換するためのXMLベースの標準規格です。クアルトリクスシステムでは、ユーザーがクアルトリクスシステムにログインする際に、サードパーティのアイデンティティプロバイダー(IdP)を介し、SAMLを使用して自動で認証するように設定することができます。SAML統合を設定するには、サードパーティがSAML 2.0またはShibboleth 2.0の実装を稼働させており、サービスプロバイダー(SP)主導のログインをサポートできることが前提となります。
クアルトリクスは、SAMLログインのIdP主導ワークフローおよびSP主導のワークフローの両方をサポートしています。2つのうちより一般的なのはSP主導による交換であり、ユーザーは https://brandID.datacenter.qualtrics.com、 または組織のバニティURLからフローを開始します。IdP主導の交換は主にユーザーが内部ネットワークで認証を行う場合、すなわち内部アプリケーションポータルからフローを開始する場合に使用されます。
以下の設定パラメーターを指定する必要があります:
- アイデンティティプロバイダー(IdP)メタデータ(XML形式でリンクまたは添付として)
- 必須タグ:
- EntityDescriptor
 - KeyDescriptor
 - SingleSignOnService
- SingleSignOnService内のHTTP PostとHTTP Redirectの両方のバインディングがサポートされています。ただし、AuthnRequestに署名が必要な場合は、HTTP Postを使用する必要があります。
 
 - SingleLogoutService
- このフィールドは、ログアウトの際にユーザーのログインセッションをクリアするURLにユーザーをリダイレクトするために使用されます。SingleLogoutServiceのURLが指定されていない場合、クアルトリクスはhttps://qualtrics.comまたは別のご希望のURLにユーザーをリダイレクトすることができます。だたしその場合、ユーザーのログインセッションはクリアされず、ユーザーは[戻る]ボタンをクリックするかログインページに戻ることでただちに再ログインできます。
 
 
 
 - 必須タグ:
 - SAML属性
- 必須:
- ユーザー名のフィールド属性(例:samAccountName)
- 属性の値は、変更されることがなく、機密ではない一意の値である必要があります。
 
 - メールアドレスのフィールド属性(例:mail)
ヒント:この属性の値は、メールアドレスの形式である必要があります。たとえば、value@email.comなどです。
 
 - ユーザー名のフィールド属性(例:samAccountName)
 - 任意:
- 
- 名のフィールド属性(例:firstname)
 - 姓のフィールド属性(例:sn)
 - ユーザータイプのマッピング属性
 - 部署のマッピング属性
 - グループのマッピング属性
 - CXダッシュボードのメタデータ属性
 
 
 - 
 
 - 必須:
 
上記の情報が提供されたら、クアルトリクスはサードパーティとShibboleth/SAML統合の設定作業を行うことができます。
SAMLレスポンスの取得と復号方法
SAML認証が成功すると、アイデンティティプロバイダーがサービスプロバイダーへSAMLレスポンスを送信します。SAMLレスポンスには、属性、証明書、バインディングなど、アイデンティティプロバイダーから渡されたすべての情報が含まれています。この情報は、認証またはログインプロセス全体に関する問題のトラブルシューティングを行う際に貴重な情報となります。
SAMLレスポンスを取得するためのツールは数多くあります。多くのブラウザーで使用できる方法を以下に紹介しますが、ほかの方法をご利用いただくこともできます。
- お使いのブラウザーで新しいタブを開きます。
 - デベロッパーツール(または開発者ツール)を開きます。
ヒント:使用しているブラウザーによって、ツールへのアクセス方法は異なります。このページのスクリーンショットはChromeブラウザーの表示と操作性を示すものです。
 - ネットワークタブを選択します。
 - ログを保持を選択します。
 - このブラウザーのタブにログインURLを入力し、SSO経由でログインします。
 - 名前の下に「default-sp」と表示されている項目を選択します。
 - ヘッダーの下部にある「Form Headers(フォームヘッダー)」の下に「SAML response」というラベルが付いた一連の文字が表示されます。
ヒント:サポートチームがSAMLレスポンスを要求している場合は、このステップで作業は終了です。
 - SAMLレスポンスは現在Base64エンコードされています。SAMLレスポンスを読み取り可能な形式にデコードするには、オンラインで利用できる任意のBase64デコーダーをご使用ください。
ヒント:次のリンクからbase64のエンコードおよびbase64のデコードのためのツールをご利用いただけます。
 
SAMLレスポンスの読み方
SAMLレスポンスには、トラブルシューティングに役立ついくつかの重要な情報が含まれています。
- Destination:サービスプロバイダーのAssertion Consumer Service URLに該当し、通常SAMLレスポンスの上部付近にあります。

 - Issuer:アイデンティティプロバイダーのエンティティIDを指しており、通常SAMLレスポンスの上部付近にあります。

 - X509Certificate:アイデンティティプロバイダーの署名証明書に該当し、通常SAMLレスポンスの中ほどにあります。

 - Audience:これはサービスプロバイダーのエンティティIDを指しており、通常SAMLレスポンスの中ほどにあります。

 - Attribute Statement:アイデンティティプロバイダーから送信されるすべての属性名と値を含み、通常SAMLレスポンスの末尾にあります。
