以下のコードは数週間前は機能していましたが、最近多くのユーザー アカウントのグループを取得できなくなり、何が変わったのかわかりません。コードは変更されていません。
.GetGroups()
メソッドは、ドメイン上の多くのユーザーに対してドメインユーザーという1つのグループのみを返しますが、私のユーザーと他のいくつかのユーザーに対しては、グループの完全なコレクションを返します。
目標は、このユーザーが属するグループのリストを取得することです。Active Directory の構造についてはよくわかりません。
using (var context = new PrincipalContext(ContextType.Domain, Environment.UserDomainName))
using (var user = UserPrincipal.FindByIdentity(context, Emply.Username))
if (user != null)
{
foreach (var gn in user.GetGroups())
{
groups += gn.Name + "|";
}
}