- PR -

ADSIで新規フォルダの場合のみ、継承フラグが取得できない

1
投稿者投稿内容
未記入
常連さん
会議室デビュー日: 2004/05/17
投稿数: 28
投稿日時: 2005-03-28 12:00
お世話になります。

ADSIを利用して、Web画面でフォルダ権限の編集を行うようなシステムを開発しております。
それで画面にそのフォルダの権限をもっているユーザが、継承ユーザかどうかを表示しています。継承ユーザかどうかの判断は、ADSIコンポーネントのActiveDs.AccessControlEntry.AceFlagsにINHERITED_ACE(0x10)が立っているかどうかで判断しています。
通常はこの方法でうまくいくのですが、エクスプローラ等で新規フォルダを作成した場合のみ、なぜかINHERITED_ACEが立っていません。しかしエクスプローラでフォルダのプロパティから、権限を参照すると、「継承」というふうに表示されます。
で、エクスプローラのプロパティの権限設定画面から、適当なユーザをいったん追加し、もう一度フラグの値を見てみると、フラグが立っている状態になっています。
ADSIのバグなのかどうなのか解りませんが、エクスプローラは正しく表示しているので、エクスプローラはどこの値をみて継承ユーザかどうかを判断しているのかが謎です。

何かヒントでもありましたら、ご教授ください。

OSはWindows2003 Server + ActiveDirectoryです。
WebページはC# + asp.netを使っています。
よろしくお願いします。
1

スキルアップ/キャリアアップ(JOB@IT)