Active Directory の経験はありません。
Delphi を使用して、Active Directory と対話するアプリケーションを開発しています。Active Directory ユーザーが特定のグループに属しているかどうかをテストする最良の方法を知る必要があります。それ、どうやったら出来るの?
Delphi 2006 BDS を使用しています。
Active Directory の経験はありません。
Delphi を使用して、Active Directory と対話するアプリケーションを開発しています。Active Directory ユーザーが特定のグループに属しているかどうかをテストする最良の方法を知る必要があります。それ、どうやったら出来るの?
Delphi 2006 BDS を使用しています。
NLDNetAPI.pasを共有したいと思います。
Active Directory に関する豊富な経験がなく、Delphi バージョン 7 以降を所有していないので、次のコードを使用して特定のグループからすべてのユーザーを取得できると思います。
GetNetGroupUsers([ServerName], [GroupName], [StringList not nil], False, True);
UserName の StringList を調べます。
ネストされたグループを考慮する必要があります。最も簡単な方法は、(計算された) SID の配列 (ネストされたグループを含む) を含むtokenGroups属性を使用することです。そこから、この sid のリストを名前に変換するか ( DsCrackNames にフィードすることにより)、 sidを確認して比較するグループから SID を取得します ( EqualSid ) 。