サイトコアの Active Directoryモジュールを使用する場合のチップス的な情報のメモを記載します。そのほかインストールや構成方法などについては次のリンクをご参照ください。
- [Sitecore Active Directory] Active Directory モジュールを使用してみる セットアップ編
- [Sitecore Active Directory] Active Directory モジュールを使用してみる コンフィギュレーション編
- [Sitecore Active Directory] Active Directory モジュールを使用してみる シングルサインオン編
1. デフォルトプロファイルアイテムの設定
ADのユーザーが作成されると ユーザーのプロファイルタブの 追加プロパティ がブランクになっています(下図参照)。変更ボタンで既定で用意されているUserアイテムを選択すると壁紙を変更できるようになります。
ADドメインユーザーの既定のプロファイルを定義したい場合はDomains.configのAD連携に使用するセキュリティードメインに defaultProfileItemID="{AE4C4969-5B7E-4B4E-9042-B2D8701CE214}" の設定を追加します。例えば次のように編集します。例で使用しているプロファイルアイテムのIDは 既定で作成される UserアイテムのIDになります。デフォルトのプロファイルアイテムの設定方法は SDNのドキュメントの "Assigning the non-default profile to AD users automatically" に記載されています。
<domain name="ad" ensureAnonymousUser="false" defaultProfileItemID="{DDEDA46F-169B-4A70-8732-DBD3F407AF2E}"/>
ADのプロファイル情報をSitecoreのユーザーのプロファイル情報に統合する方法に関しては、SDNのActive Directoryモジュールのドキュメントの Chapter 3 AdvancedProfileConfiguration参照してください。 ADのdisplayName属性を サイトコアのFullName にマッピングする方法や ADの電話番号(telephoneNumber) 属性をサイトコアユーザーのカスタムプロファイルとして使用する方法が記載されています。
Active Directory連携モジュールの メンバシッププロバイダを使用してパスワードのリセットを行えるようにするには ActiveDirectoryMembershipProvider.EnablePasswordReset PropertyのRemarks の欄を参照してください。いくつかのプロパティも有効にする必要があります。少し手順が必要になります。
2. Custom Filter を使用したユーザーやセキュリティグループの絞り込み
メンバシッププロバイダやロールプロバイダに customFilter 属性を設定することで 表示するユーザー等の一覧を絞り込むといったことができるようになります。下記が Custom FIlter の例になります。
customFilter="(memberOf=CN=SitecoreUIUsers,CN=Users,DC=test,DC=local)"
customFilter をプロバイダの定義に設定することで特定のグループのメンバーのユーザーのみ表示することができます。接続文字列でActive Directoryのルートに接続するようにしても customFilter を設定することで特定のセキュリティグループに所属するといった条件を設定することで一部のユーザーしか表示できないように制御することができます。
customFilterには 接続文字列で指定した AD上のパス以外のセキュリティグループを条件指定することもできます。Custom Filter の詳細に関しては SDNの Active Directoryモジュールのドキュメントや 下記サイトをご参照ください。
Creating a Query Filter
http://msdn.microsoft.com/en-us/library/ms675768%28VS.85%29.aspx
customFilterを設定すると ユーザーマネージャーのUIからユーザーを作成すると、ユーザーマネージャーに(フィルタ条件を満たしていないため)ユーザーが表示されないという現象を引き起こす可能性があります。その場合は、 ldap.config に記載されている initializeAdUserEntryおよび、initializeAdRoleEntry をカスタマイズします。上記パイプラインの設定をすることで作成したユーザーをセキュリティーロールに含めたり、プロパティ値を設定するといったことができるようになるようです。
標準で用意されている パイプラインプロセッサーの機能では不十分の場合は、独自のプロセッサーを実装して、プロセッサーの設定を追加して対応します。
3.プロバイダの構成がうまく機能しているかの確認
モジュールを構成して、うまく動作していない場合、ログファイルを確認することに加えて /sitecore/admin/ProviderStatus.aspx を表示して構成が上手くいっているかを確認することができます。ProviderStatus.aspx のページを表示すると 下図のように表示され、Active Directory の Provider が有効になっているか確認できます。AD統合用のMembership Provider 等Providerが上手く動作していない場合は、たとえば Membership provider のステータスが OFF になります。
4. Active Directory モジュールをデバッグモードで動作させる
Active Directory 統合モジュールを デバッグモードで動作させたい場合、 LDAP.config の LDAP.Debug 設定を true に設定します。デバッグモードにすると詳細なログが出力されるようになります。
5. Sitecore UI で行いたいユーザーやグループに対する操作に必要な権限
SDNのActive Directoryモジュールのドキュメントの(記事作成時点で最新のドキュメントの場合)4.10 User Permissions をご参照ください。
簡単ですが、チップス的なメモを記載しました。上記覚書の多くが実際に SDNの Active Directory Module Administrator's Guide の Other Features の章に記載されていますので、詳細はそちらを参照していただければと思います。
さんのコメント: さんのコメント: