2

これは助けを求めるというより好奇心ですが、私は PrincipalPermission を使用し、ユーザーが Active Directory の特定のグループの一部であることを確認するときに、実際のグループ名を使用せず、代わりに Windows 2000 以前のグループに対して検証することに気付きました。代わりに名前を付けます。通常、これは違いはありません - 誰かがたまたまこれらの値を変えない限り。

.Net API が「本当の」名前の代わりにそのグループ名を使用する理由を考えられる人はいますか? これにより、私は何時間もの悲しみと、最終的にすべてを理解するための少しの盲目的な運を引き起こしました.

4

2 に答える 2

3

PrincipalPermission属性は、「識別名」(DN)ではなく、ユーザー名とグループ名(「Users」や「JohnDoe」など)にActiveDirectoryの「sAMAccountName」を使用すると想定します(これを自分でテストして試したことはありません)。あなたは期待するかもしれません( "CN = Users"、 "CN = John Doe")。

この背後にある理由は、スタンドアロンサーバーやNT4ドメインなどで作業しているシナリオである可能性があります。このような場合、ADベースの識別名はありませんが、SAMアカウント名はあります。

したがって、ある意味では、これは最初は少し意外に思われるかもしれませんが、私の意見では、これらのSAMアカウント名(AD以前の名前)を使用することは理にかなっています。同意しませんか?

マーク

于 2009-07-06T20:29:44.453 に答える