11.2.14. ドメインオプション: ユーザー名形式の設定
ldap.example.com
ドメインの jsmith
と ldap.otherexample.com
ドメインの jsmith
の両方を問題なく認証できます。
[sssd]
セクションでユニバーサルに定義され、その後に各ドメインセクションで個別に定義することができます。
re_expression
パラメーターで設定します。
(?P<name>[^@]+)@?(?P<domain>[^@]*$)
注記
jsmith
としてログインして、このユーザーが例えば LOCAL ドメインに属しているとすると、SSSD はこのユーザーのユーザー名を jsmith@LOCAL
と解釈します。
(?P<domain>[^\\]*?)\\?(?P<name>[^\\]+$)
- username
- username@domain.name
- DOMAIN\username
(((?P<domain>[^\\]+)\\(?P<name>.+$))|((?P<name>[^@]+)@(?P<domain>.+$))|(^(?P<name>[^@\\]+)$))
注記
jsmith@ldap.example.com
といった完全修飾名で情報を要求すると、適切なユーザーアカウントが常に返されます。異なるドメイン内でに同一ユーザー名を持つ複数のユーザーがいると、ユーザー名の特定だけだと、ルックアップの順番で最初にくるドメインのユーザーが返されます。
re_expression
はユーザー名形式の設定方法で最も重要なものですが、別のアプリケーションで便利な 2 つのオプションもあります。
一つは re_expression
で、全ユーザーが使用するデフォルトのドメイン名を設定します。(これはグローバル設定で、[sssd]
セクションのみで利用可能です。) 複数のドメインが設定されている場合があるかもしれませんが、ユーザーデータを保存するのは 1 つだけで、他はホストやサービス ID に使用されます。デフォルトのドメイン名を設定することで、ユーザーはドメイン名を特定せずにユーザー名だけでログインできます。ドメイン名は、プライマリードメイン外のユーザーの場合に必要となります。
[sssd] ... default_domain_suffix = USERS.EXAMPLE.COM
もうひとつのパラメーターは re_expression
に関連していますが、ユーザー名の 解釈 方法を定義するのではなく、特定された名前の 印刷 方法を定義します。full_name_format
パラメーターは、ユーザー名とドメイン名 (が決められた後に) の表示方法を設定します。
full_name_format = %1$s@%2$s