シングル サインオン (SSO) を設定するには、いくつかの手順を実行する必要があります。
Horizon のシングル サインオン モジュールは Linux で PAM(プラグ可能な認証モジュール)と通信を行い、Linux を Active Directory (AD) と連携するために使用する方法には依存しません。Horizon Single Sign-on は、Linux を Active Directory と連携する OpenLDAP と Winbind のソリューションで動作することが分かっています。
デフォルトの場合、SSO では、Active Directory の sAMAccountName 属性がログイン ID であると想定されます。OpenLDAP か Winbind ソリューションを使用する場合、正しいログイン ID を SSO に使用するには、次の構成手順を実行する必要があります。
- OpenLDAP では、sAMAccountName を uid に設定します。
- Winbind では、次のステートメントを構成ファイル /etc/samba/smb.conf に追加します。
winbind use default domain = true
- OpenLDAP では、大文字で短いドメイン名を使用する必要があります。
- Winbind では、長いドメイン名と短いドメイン名が両方ともサポートされます。
Active Directory ではログイン名で特殊文字がサポートされますが、Linux ではサポートされません。このため、SSO のセットアップ時には、特殊文字をログイン名に使用しないでください。
Active Directory では、ユーザーの UserPrincipalName (UPN) 属性と sAMAccount 属性が一致せずに、ユーザーが UPN でログインすると、SSO は失敗します。たとえば、Active Directory の mycompany.com にユーザー juser が存在しているときに、ユーザーの UPN が [email protected] ではなく [email protected] の場合、SSO が失敗します。ユーザーが、sAMAccount に保存されている名前を使用してログインすると、これを回避できます。たとえば、juser のように追加します。
- Winbind では、ユーザー名の大文字と小文字がデフォルトで区別されません。
- OpenLDAP では、Ubuntu が NSCD を使用してユーザーを認証し、大文字と小文字がデフォルトで区別されません。RHEL と CentOS は SSSD を使用してユーザーを認証し、大文字と小文字がデフォルトで区別されます。設定を変更するには、ファイル /etc/sssd/sssd.conf を編集して次の行を
[domain/default]
セクションに追加します。case_sensitive = false
Linux デスクトップに複数のデスクトップ環境がインストールされている場合には、デスクトップ環境を参照して、SSO で使用するデスクトップ環境を選択してください。