組織は、従業員の既存のLDAP認証を利用して、sesinetdでの認証を制御することができます。

LDAPの設定

組織によってはLDAP導入環境が若干異なるため、sesinetdが組織のLDAPに対してユーザ認証を行なう際に必要となる様々なプロパティを定義するために、YAML設定ファイルを使用します。

設定プロパティ

server_url

組織のLDAPサーバーURL。

bind_as_auth_user

trueに設定すると、LDAP認証に成功した後に、サーバーを強制的にデフォルトの認証にバインドし直すのではなくて、そのLDAP接続を認証ユーザとしてバインドしたままにします。

bind_dn

LDAPサーバへのバインド時に使用する識別名(DN)。 これは、ユーザ認証以外のすべてのLDAPコールで使用されます。 代わりに、ユーザのDNとパスワードが使用されます。

bind_dn_password

bind_dnで使用するパスワード。

group_type

  • type: group_searchが返すグループのタイプを指定します。現在のところ、posix_groupのみがサポートされているグループタイプです。

  • name_attr: グループ検索後に返される情報からグループ名を取得するために、ライセンスサーバーの名前アトリビュートを指定します。

user_attrib_map

重要なユーザ情報をLDAPユーザ情報アトリビュートにマッピングするための情報をライセンスサーバーに用意します。

  • first_name: ユーザのファーストネームに対応するユーザアトリビュート名を指定します。

  • last_name: ユーザのラストネームに対応するユーザアトリビュート名を指定します。

  • email: ユーザのメールアドレスに対応するユーザアトリビュート名を指定します。

always_update_user

trueに設定すると、ユーザがログインする度に、LDAP情報から最新の値でユーザ情報が更新されます。

cache_timeout

この値は、ユーザのグループメンバーシップと識別名(DN)がキャッシュされる秒数を決定します。 デフォルトは0で、キャッシュが無効化されます。 これは、LDAPサーバに負荷がかかりすぎるため、プロダクション環境での使用は推奨しません。

サンプルのLDAP設定ファイル

server_url: "ldap://ldap1.myorg.com"
bind_as_auth_user: false
bind_dn: "cn=mylicenseadmin,dc=myorg,dc=com"
bind_dn_password: "my bind dn password"
user_search:
  dn: "ou=people,dc=myorg,dc=com"
  scope: "subtree"
  filter: "(uid={user})"
group_search:
  dn: "ou=groups,dc=myorg,dc=com"
  scope: "subtree"
  filter: "(objectClass=posixGroup)"
group_type:
  type: "posix_group"
  name_attr: "cn"
user_attrib_map:
  first_name: "givenName"
  last_name: "sn"
  email: "mail"
always_update_user: true
cache_timeout: 300

ユーザ認証

認証方法