[これは、私が既にここで尋ねた質問のもう少し具体的なバージョンです: Active Directory オブジェクトに対する有効なアクセス許可を照会するにはどうすればよいですか? - ここで受け取った回答が、そこで受け取った回答をよりよく理解し、判断するのに役立つことを願っています。]
具体的には、現在のユーザーが、別のユーザー (つまり、メールボックス)、メールが有効なパブリック フォルダー、または配布リストです。グループ メンバーシップを介して間接的に付与 (または拒否) されたアクセス許可も考慮に入れることが重要です。中長期的には、Windows セキュリティ モデルとその API についてもっと学びたいと思っています。このタスクは、私の出発点にすぎません。
Delphi で利用可能な C++ の例のいくつかを実装する最善の方法を調査しているときに、JWSCL (JEDI Windows Security Code Library) に出くわしました。しかし、AD 関連のコードが最近いくつか寄稿されたように見えますが、JWSCL ブログと wiki のいくつかのドキュメントでは、「Active Directory サポート」がまだ追加されていないことを指摘しています。
しかし、これは単に古いドキュメントの問題でしょうか? そうでない場合でも、この特定のタスクにそれが本当に必要ですか? SECURITY_DESCRIPTOR
を使用して、チェックしたいオブジェクトの属性を取得することができますIDirectoryObject.GetAttributes
。その SD を取得した後でも、AD オブジェクトのアクセス許可をチェックしていることに違いはありますか? おそらくADサポートが欠落しているにもかかわらず、すでにそこにあるコードでそれを使用できませんでしたか?
もしそうなら、どのように?
JWSCL に同梱されているGetEffectiveRightsFromAclWithAuthZ
サンプルを既に変更しようとしましたが、ポインタTJwSecurityDescriptor
からオブジェクトを作成することにすでに失敗しています。PSECURITY_DESCRIPTOR
に渡すだけでTJwSecurityDescriptor.Create()
失敗し、EJwsclInvalidSIDException
.
何か案は?私はリモートで正しい軌道に乗っていますか?