emails属性に複数のメールアドレスを割り当てる

IIJ IDユーザのemails属性に複数のメールアドレスを割り当てるサンプルです。

【参考】

設定ファイルは参考例です。

実際の作業においては、お客様の環境に合わせて設定してください。

対応方法

1. config.ymlのiid.scim.attribue.user.ad_bind.emailsにAD属性を以下のように複数設定します。

1
iid:
2
  scim:
3
    attribute:
4
      user:
5
        ad_bind:
6
          emails:
7
                                 - value:        proxyAddresses # ※1 ※2
8
                                 - value:        mail
9
                                 - value:        mailnicknam

※1 proxyAddressesに複数のメールアドレスを登録している場合、「SMTP:」(すべて大文字)プレフィックスがついたメールアドレスがIIJ IDでのプライマリのメールアドレスとして設定されます。詳しくは「config.yml」をご覧ください。
※2 proxyAddressesに複数のメールアドレスが登録されている場合、設定によってはIIJ IDのemails属性に登録できる最大数を超過する可能性があります。超過した場合、プライマリを除いたメールアドレスの中で、アルファベット順で5つ目以降のメールアドレスがIIJ IDに同期されません。


2. config.ymlのiid.scim.attribue.user.default.emailsにて、以下のようにproxyAdressesがプライマリのメールアドレスになるように設定します。

1
iid:
2
  scim:
3
    attribute:
4
      user:
5
        ad_bind:
6
          emails:
7
                                 - value:        proxyAddresses # ※1 ※2
8
                                 - value:        mail
9
                                 - value:        mailnicknam
config.ymlサンプル
1
log:
2
  loglevel:                      info
3
4
ad:
5
  ldap:
6
    cache_disabled:              true
7
    server:
8
      addresses:
9
                                 - 192.168.0.100
10
                                 - 192.168.0.101
11
      user:                      'CN=iid_proxyadmin,CN=Users,DC=example,DC=local'
12
      encryption:                none
13
    base_dn:                     'DC=example,DC=local'
14
    filter:
15
      user:                      'memberOf:1.2.840.113556.1.4.1941:=CN=IID_IDaaS利用者グループ,OU=IID_Groups,DC=example,DC=local'
16
      group:                     'memberOf:1.2.840.113556.1.4.1941:=CN=IID_IDaaS利用者グループ,OU=IID_Groups,DC=example,DC=local'
17
18
iid:
19
  scim:
20
    http:
21
      proxy:
22
        use:                     false
23
        address:                 192.168.0.10
24
        port:                    8080
25
    attribute:
26
      user:
27
        default:
28
          emails:
29
            - primary:           true
30
            - primary:           false
31
            - primary:           false
32
        ad_bind:
33
          externalId:            userPrincipalName
34
          userName:              sAMAccountName
35
          name:
36
            familyName:          sn
37
            givenName:           givenName
38
          active:
39
                                 - userAccountControl
40
                                 - accountExpires
41
          emails:
42
                                 - value:        proxyAddresses
43
                                 - value:        mail
44
                                 - value:        mailnickname
45
      group:
46
        ad_bind:
47
          externalId:            objectGUID
48
          displayName:           name
49
          email:                 mail