現在のユーザーが特定の Active Directory オブジェクトに対して特定のアクセス許可を持っているかどうかをプログラムで判断しようとしています (具体的には、この場合、ユーザーが別の Exchange ユーザーまたは配布リスト オブジェクトに対する "送信者" アクセス許可を持っているかどうかを判断しようとしています)。 )。
ADSI を使用して属性にアクセスする方法は既に理解しました。のプロパティntSecurityDescriptor
で ACE を列挙できます。しかし:IADsSecurityDescriptor
DiscretionaryACL
- そのデータから、トラスティに対して "Send As" アクセス許可が明示的に許可されているか拒否されているかを判断するにはどうすればよいですか?
- グループ メンバーシップを介して間接的にアクセス許可が付与されている場合、どうすればこれを発見できますか? ユーザーがメンバーであるすべてのグループを (再帰的に) チェックして、有効なアクセス許可を自分で解析する必要がありますか? 確かにそのタスクのための API があるに違いありません...
FWIW、私は ActiveDs.dll タイプライブラリを使用して Delphi (つまり、ネイティブ Win32 コード) でコーディングしているため、ネイティブで同じことを行う方法の手がかりがソース コードから得られない限り、.NET 固有のソリューションはあまり役に立ちません。コード。同じことが PowerShell にも当てはまります。
PR_EMS_AB_PUBLIC_DELEGATES
始める前に:およびPR_EMS_AB_PUBLIC_DELEGATES_BL_O
Extended MAPI プロパティについては既に知っています。しかし、これは私が求めているものではありません。これらのプロパティは、「代理人として送信」権限ではなく、「代理人として送信」権限 (代理人) を参照しており、これはまったく別のものです。