Home > Windows にまつわる e.t.c.

Active Directory スキーマー拡張


Active Directory も LDAP なので、独自スキーマーの拡張が可能です。

入室とかのカード認証等で、AD にデーターを追加出来たら楽なんだけどなぁ... って時には、AD のスキーマーを拡張するのも良いでしょう。

Active Directory も LDAP なので、LDAP バリバリだぜって方はお馴染みの LDIF って事になりますが、そうでない方は GUI で拡張がお手軽ですかね。

AD のスキーマーの拡張は、作成しかできず、変更/削除ができないので、必ずテスト環境での実装/動作確認をしてから、バックアップ等の対策をしたうえでの拡張を強くお勧めします。

 

前提条件

ADのスキーマーを拡張するには、OIDが必要

OID には Private use の概念がないので、”Private Enterprise Number (PEN)”を取得しておく必要があり、PEN は IANA へ申請します。(費用は掛かりません)

発行には数日を要するので、早めの申請が吉です。

Private Enterprise Number (PEN) Request Template
http://pen.iana.org/pen/PenApplication.page

 

# リンク切れになっていたら、「PEN」「IANA」で検索してください

 

ADのスキーマー拡張に使用するOID設計

スキーマー拡張に使用する OID は、以下の体系になっています。

iso(1)
-identified-organization(3)
--dod(6)
---internet(1)
----private(4)
-----enterprise(1)
------PEN

本来は取得した PEN を使わなくてはいけませんが、手順紹介なので MS さんの PEN : 311 をつかっちゃいます ^^;

すると、こんな OID 体系になります。

1.3.6.1.4.1.311

これ以下にプライベートな OID を割り当てるので、以下の様な体系になるように OID を設計します。

1.3.6.1.4.1.311.1.1.1.1

 

拡張するADのスキーマークラス

AD のスキーマークラスは以下の体系になっています。

top
-person
--organizationalPerson
---user
----computer

このため、ユーザーを拡張する際は「user」を、コンピューターを拡張する際は「computer」を拡張することになります。

 

スキーマー拡張準備

スキーマー拡張をする前に1度だけ実施してください。

AD スキーマー スナップインの登録
regsvr32 schmmgmt.dll

 

AD スキーマー スナップインの登録

スナップインを登録すると、MMC に AD スキーマーが追加できるようになる
 

 

スキーマーの拡張手順

スキーマーの拡張は、独自属性を登録し、その属性を独自クラスに登録し、その独自クラスを拡張するクラスに登録します。

 

独自属性の作成

独自属性の作成

スキーマー登録は削除/変更ができないので警告される!!

独自属性の詳細

作成した独自属性のプロパティを開く

GC へのレプリケートを指定

 

独自クラスの作成

独自クラスの作成

独自クラスの詳細(属性拡張をするので「補助型」を指定する)

作成した独自属性を独自クラスに加える

 

拡張するクラスへの独自クラス登録

拡張するクラスのプロパティを開く

補助型クラスに独自クラスを追加する

 

以上で AD スキーマーの拡張は完了です。

拡張したスキーマーは Windows 標準の UI で値をセットすることができませんので、PowerShell とか、自作アプリケーションとか、サードパーティーツールで値をセットする必要があります。

 

back.gif (1980 バイト)

home.gif (1907 バイト)

Copyright © MURA All rights reserved.