3.7. unicornidm.template.ad(5)

3.7.1. 概要

unicornidm.conf, templates/<name>.py

3.7.2. 説明

バックエンドセクションのうち、 typead となっているバックエンドは、 Active Directory ドメインコントローラー (AD DC) への接続に関する設定を行います。

各バックエンドには必ずテンプレートファイルを用意する必要があります。 テンプレートファイルとは Unicorn ID Manager の任意属性 (フロントエンド属性) を バックエンド固有の属性 (バックエンド属性) にマッピングするためのものです。

3.7.3. パラメーター

type
バックエンドのタイプを指定します。
uris
AD DC の URI を指定します。カンマ区切りで複数の URI を指定できます。 URI が複数ある場合、通常先頭の URI への接続が実行され、失敗すれば、 次の URI への接続を試みます。
bind_user
AD DC へ接続する際に使用するユーザー名を指定します。 DN とユーザープリンシパル名 の両方の形式に対応しています。
bind_password_file
AD DC へ接続するユーザーのパスワード情報を格納したファイルパスを指定します。
domain
接続する AD DC のドメイン名を指定します。
ou_user
接続する AD DC においてユーザーオブジェクトが格納されている OU (組織単位) を 指定します。デフォルトは CN=Users です。
ou_group
接続する AD DC においてグループオブジェクトが格納されている OU (組織単位) を 指定します。デフォルトは CN=Users です。
filter_user
ユーザー検索時に使用するフィルターを指定します。 デフォルト値は (&(objectClass=user)(!(objectClass=computer))) です。
filter_group
グループ検索時に使用するフィルターを指定します。 デフォルト値は (objectClass=group) です。
backend_primary_key_user
ユーザーの RDN を指定します。 デフォルト値は CN です。
backend_primary_key_group
グループの RDN を指定します。 デフォルト値は CN です。
member_keys
グループのメンバーに該当するバックエンド属性名を指定します。 カンマ区切りで複数指定することもできます。 デフォルト値は member です。
assign_auto_uid_number
ユーザーの uidNumber を自動生成するかのフラグです。 デフォルト値は no (uidNumber を自動生成しない) です。
assign_auto_uid_number_min
ユーザーの uidNumber を自動生成する際、 uidNumber に割り当てる最小値 を指定します。デフォルト値はありません。
assign_auto_uid_number_max
ユーザーの uidNumber を自動生成する際、 uidNumber に割り当てる最大値 を指定します。デフォルト値はありません。
assign_auto_gid_number
グループの gidNumber を自動生成するかのフラグです。 デフォルト値は no (gidNumber を自動生成しない) です。
assign_auto_gid_number_min
グループの gidNumber を自動生成するかのフラグです。 デフォルト値は no (gidNumber を自動生成しない) です。
assign_auto_gid_number_max
グループの gidNumber を自動生成する際、 gidNumber に割り当てる最大値 を指定します。デフォルト値はありません。

3.7.4. テンプレート

以下は、 ad のテンプレートファイルの例です。

User = {
    "objectClass": [
        "top",
        "person",
        "organizationalPerson",
        "user",
    ],
    "cn": userName,
    "sAMAccountName": userName,
    "sn": familyName,
    "givenName": givenName,
    "unicodePwd": password,
    "userAccountControl": "512",
    "description": default(description),
    "displayName": default(displayName, "%(familyName)s %(givenName)s"),
}


Group = {
    "objectClass": [
        "top",
        "group",
        ],
    "cn": groupName,
    "sAMAccountName": groupName,
    "description": default(description),
}

注意すべき点は以下のとおりです。

  • User と Group の辞書には必ず、 objectClass を list 型で指定する必要があること
  • User と Group の辞書には必ず、 sAMAccountName を含めること
  • User の objectClass には必ず user を含めること
  • Group の objectClass には必ず group を含めること