衛藤です。
?
Windows Server “Longhorn” に追加される日本の開発チーム発の新しい機能を紹介します。
Active Directoryを構築されているまたは将来構築する予定のある方にとっては朗報かもしれません。Longhorn の Active Directory では ”よみ” でユーザーのソートや検索が行えるようになります。
?
今までは、もしユーザーの名前に漢字を使っている場合は、そのユーザーオブジェクトを検索するにはその名前の漢字を正確に覚えておくしか方法がありませんでした。また名前によるユーザーオブジェクトのソートも文字コード順にソートされてしまいますので、我々日本人にとっては当たり前の50音順のソートを行う事は不可能でした。言い換えると、ソート結果は50音順という観点からすると「ぐちゃぐちゃ」の結果でとても整列とは呼べないものでした。もっとも顕著な例は、Exchange Server などのアドレス帳で一覧表示した場合でしょう。ユーザー数が多い場合は、目的のユーザーを探し当てるのはかなり熟練した技が必要になります。
?
Longhorn では下記に示す振り仮名のためのスキーマ拡張が行われます。これらの属性は、Active Directory スキーマ スナップインで確認できます。
-
msDS-PhoneticCompanyName? 会社名の振り仮名
-
msDS-PhoneticDepartment??? 部署名の振り仮名
-
msDS-PhoneticDisplayName? ユーザーの表示名
-
msDS-PhoneticFirstName????? ユーザーの名
-
msDS-PhoneticLastName??????? ユーザーの姓
例えば、「及川 卓也」というユーザーを作成して表示名の振り仮名(よみ)を設定する簡単なスクリプトの例を示します。?
sName = takuya.oikawa
sDisplayName = “及川 卓也”
sPhoneticDisplayName = “オイカワ タクヤ”
?
Set oContainer = GetObject(“LDAP://OU=WinDiv,DC=example,DC=local”)
?
Set oUser = oContainer.Create(“User”, “CN=” & sName)
?
oUser.Put “sAMAccountName”, sName
oUser.Put “displayName”, sDisplayName
oUser.Put “msDS-PhoneticDisplayName”, sPhoneticDisplayName
oUser.Put “userPrincipalName”, sName & “@example.local”
oUser.SetInfo
通常の表示名に続き表示名の振り仮名を設定しているのがおわかり頂けると思います。 (もちろんADSI Editを使用して振り仮名を設定する事も可能) それ以外の方法については、Beta 3以降で対応する予定です。
?
設定した振り仮名はActive Directory ユーザーとコンピュータ スナップインの検索機能を利用して検索できます。通常の検索では、[名前] フィールドに「オイカワ」といった具合によみを入力して検索することで該当するすべてのユーザーが検索されます。もちろん部分文字列の「オイ」だけを入力しても動作します。詳細検索を利用する場合は、会社名、部署名、表示名、姓、名のいずれかのフィールドを指定してその属性に対してよみで検索可能です。
ソートは、スナップインの詳細ペイン(右側部分)で、振り仮名属性の列の追加が可能になりますので、後は通常のリストビューのカラムヘッダをクリックするのと同様に振り仮名のカラムヘッダをクリックするだけでソートが可能になります。
しかし、実際の恩恵としてはこういった管理コンソールだけではなく Active Directory対応のアプリケーションが振り仮名を利用できるようになることではないでしょうか。最も典型的な例としては、Exchange / Outlook のアドレス帳になると思われます。
もし振り仮名によるソートや検索を実現するためだけに、Active Directory とは別のユーザーデータベースを別途構築していたとするとそれらはもはや必要なくなるでしょう。Longhorn からは Active Directory がユーザーの振り仮名などの情報をすべて保持してくれます。
?
(キー坊になりきって…)小さな事からコツコツと、日本のユーザーにとってより使いやすい製品にすべく頑張りますので、フィードバックをお寄せください。
?