:::: MENU ::::

AD DS用意してGoogle Cloud Directory Sync(GCDS)でユーザー同期するまで

二度とやることはないと思っていたら二度目が来たので Windows Server 触ったときのメモを残す。
手順として間違っていたり脆弱なことをしているかもしれないが疎通確認目的なので目をつぶる。

やったことは AD と G Suite の Cloud Directory とのユーザー同期テスト。

用意したもの

  • Windows Server 2019 (なんか新しく出ててたので)
  • G Suite

Active Directory Domain Service (AD DS)のセットアップ

Windows Server 2012: Set Up your first Domain Controller (step-by-step) - TechNet Articles - United States (English) - TechNet Wiki

ドメインは yourdomain.local のような内部ドメインでいい。

ウィザードによるセットアップで使う予定のポートがすでに使われていたら最後の Install ボタンが押せない。ポートが衝突するアプリが動いていたら事前に止めておくこと。

Active Directory Lightweight Directory Service (AD LDS)のセットアップ

LDAP Configuration on Windows Server - YouTube

LDAP が必要だったらこっちもインストールする必要があると思っていたのだが、Domain Service も LDAP として呼べるようだったのでテストだし Domain Service の LDAP を呼ぶことにした。

ADSI Edit

AD LDS で LDAP を立てたときユーザーがいなかったので、ADSI Edit を使って作成。

  • Connection Point
    • dc=yourdomain,dc=local
  • Computer
    • localhost:5389

任意の Base DN の下にユーザーを作成してパスワードリセットする。

IBM Knowledge Center - Adding an administrator to the Security Access Manager metadata directory partition

このままだと権限がないので、Administrators Role の member に作成したユーザーを追加しておく。

LDP

LDP.exe でドメインアカウントの認証が出来るか確認 | Unlimited Root

AD DC でも AD LDS の LDAP に認証問い合わせできるか確認する。

Google Cloud Directory Sync

Google Cloud Directory Sync について - G Suite 管理者 ヘルプ

  • Google Domain Configuration > Connection Settings
    • Primary Domain Name
      • G Suite の Primary Domain
    • Replace domain names in LDAP email addresses (of users and groups) with this domain name.
      • 必要であればチェック
    • Alternative email domain
      • 必要であれば入力


  • LDAP Configuration > Connection Settings
    • Server Type
      • MS Active Directory
    • Connection Type
      • Standard LDAP
    • Host Name
      • localhost
    • Port
      • 389
    • Authentication Type
      • Simple
    • Password
      • 設定したパスワード
    • Base DN
      • DC=yourdomain, DC=local



  • General Settings
    • User Accounts
    • Groups
  • User Accounts > User Attributes
    • Email Address Attribute
      • mail
    • Unique identifier Attribute
      • objectGUID
    • Google Domain Users Deletion / Suspension Policy
      • Suspend Google domain users not fount in LDAP, instead of deleting them.
      • Don't suspend or delete Google domain super admins not found in LDAP.


  • User Acconts > Additional User Attribiutes
    • Given Name Attribute(s)
      • givenName
    • Family Name Attribute(s)
      • sn
    • User Password Sync
      • Synchronize Passwords
        • Only for new users
      • Password Attribute
        • userPassword


  • User Accounts > Search Rules
    • Scope
      • Sub-tree
    • Rule
      • (&(&(objectClass=user)(objectCategory=person))((mail=adm*)))

メールアドレスが adm から始まるユーザーだけ対象にしている(テストなので)
Test LDAP Query で Rule に合致するユーザーがいるか確認できるのでやっておきましょう。


  • Groups > Search Roles
    • Scope
      • Sub-tree
    • Rule
      • objectClass=*


  • Sync



Simulate sync で dry run ができます。

Proposed Change Report, Generated 2:41:16 AM Feb 28, 2019

Analyzed users:
1 local
7 remote

Proposed changes:
Delete: 0
Modify: 1
Create: 1

Modify (all proposed changes) - 1 total users affected
Modify user 1: "hogehoge.user"
Suspend user

Create - 1 total
New user 1: "administrator"
Non-address primary key "qwertyuiop"
Given name "Admin"
Family name "testAD"
SHA1 password
0 aliases

Analyzed groups:
1 local
3 remote

Proposed changes:
Delete: 1
Modify: 0
Create: 1

Delete Group(s) - 1 total
"hogehoge-team"
Create Group(s) - 1 total
"administrator"


Don't suspend or delete Google domain super admins not found in LDAP.

こちらにチェックを入れているので LDAP にいないが super admin になっているユーザーは消えていません


Suspend Google domain users not fount in LDAP, instead of deleting them.

こちらを選択しているので LDAP にいなくて super user ではないユーザーが 1 人削除されてますね


Specify which groups to import and synchronize. Other groups are deleted.

User と違って Group は LDAP になかったら削除になります
Type が Team (domain) のものは削除されて Custom は残っていたので、Type によって削除されるかが変わるようです