unicornidm.template.azure(5)
==============================

概要
-----

::

    unicornidm.conf, templates/<name>.py

説明
------

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

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

パラメーター
--------------

type
    バックエンドのタイプを指定します。

domain
    接続する Azure AD のドメイン名を指定します。

bind_user
    Azure AD へ接続する際に使用するクライアント ID を指定します。

bind_password_file
    Azure AD へ接続するクライアント ID のパスワード情報を格納したファイルパスを指定します。

backend_primary_key_user
    ユーザーを一意に特定するための Azure バックエンド属性を指定します。
    デフォルト値は userPrincipalName です。

backend_primary_key_group
    グループを一意に特定するための Azure バックエンド属性を指定します。
    デフォルト値は displayName です。

require_immutaleId
    ユーザー登録時に、 immutableId を登録するかどうかを指定します。
    デフォルト値は yes (immutableId を登録する) です。

テンプレート
-------------

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

::

    User = {
        "userPrincipalName": userName,
        "immutableId": default(immutableId),
        "displayName": default(displayName, "%(familyName)s %(givenName)s"),
        "surname": familyName,
        "givenName": givenName,
        "mailNickname": userName,
        "accountEnabled": default(active, True),
        "passwordProfile": {
          "password": password,
          "forceChangePasswordNextLogin": default(forceChangePasswordNextLogin, True),
        },
        "passwordPolicies": "DisablePasswordExpiration,DisableStrongPassword",
        "usageLocation": default(usageLocation, "JP"),
        "assignedLicenses": default(azureLicense),
    }


    Group = {
        "displayName": groupName,
        "mailNickname": groupName,
        "mailEnabled": False,
        "securityEnabled": True,
        "description": default(description),
    }

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

* User の辞書には必ず userPrincipalName バックエンド属性を付与すること

* Group の辞書には必ず displayName バックエンド属性を付与すること
