How to find current user group from Active Directory Server
refer screenshot url. http://i.stack.imgur.com/v1dww.png
For the username "palani", Group is Administrators.
How it can be get from Active Directory server
答案 0 :(得分:0)
If you're on .NET 3.5 and up, you should check out the System.DirectoryServices.AccountManagement
(S.DS.AM) namespace. Read all about it here:
Basically, you can define a domain context and easily find users and/or groups in AD:
// set up domain context
using (PrincipalContext ctx = new PrincipalContext(ContextType.Domain))
{
// find currently logged in user
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, "palani");
if(user != null)
{
foreach(GroupPrincipal group in user.GetAuthorizationGroups().OfType<GroupPrincipal>())
{
Console.WriteLine("Group name: {0}", group.Name);
}
}
}
A user can be member of any number of groups - there isn't the group for a given user - there just is the list of groups he/she is a member of.
The new S.DS.AM makes it really easy to play around with users and groups in AD!
答案 1 :(得分:0)
你可以试试这个:
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "domain.com",
"CN=palani,OU=Department,DC=domain,DC=com",
"administrator",
"password");
UserPrincipal usr = UserPrincipal.FindByIdentity(ctx,"palani");
if(usr!=null){
Console.WriteLine(Convert.ToString(usr.SamAccountName));
PrincipalSearchResult<Principal> group = usr.GetGroups();
foreach(Principal pr in group)
Console.WriteLine(pr.Name);
}
Console.Read();