I have a button click which checks to see if a domain user is a member of the local admin group on a workstation. It works when i supply a local workstation username, but when i supply a domain account, it tells me everytime theyre not apart of the admin group when theyre:
Public Shared Function IsMemberOfGroup(userName As String, machineName As String, memberGroup As String) As Boolean
Dim isMember As Boolean = False
Using rootContext As New PrincipalContext(ContextType.Machine, machineName), _
grp As GroupPrincipal = GroupPrincipal.FindByIdentity(rootContext, memberGroup), _
usr As UserPrincipal = UserPrincipal.FindByIdentity(rootContext, IdentityType.SamAccountName, userName)
If grp IsNot Nothing AndAlso usr IsNot Nothing Then
' Check if the user is a member of the group.
isMember = grp.GetMembers(True).Contains(usr)
isMember = False
Private Sub Button15_Click_1(sender As Object, e As EventArgs) Handles Button15.Click
Dim str As String = tbUser.Text
str = str.Remove(0, 5)
Dim localusrname As String = str
If IsMemberOfGroup(localusrname, TextBox1.Text, "administrators") Then
tbadmin.Text = "Admin rights granted to " & tbUser.Text & " on Workstation: " & TextBox1.Text & " and Primary User has been updated in the local Registry."
tbadmin.Text = "Admin rights have not been updated yet for " & tbUser.Text & " on Workstation: " & TextBox1.Text & "." & " Make sure you run the Fix Admin Rights tool first!" & " If you have, please verify it is successful and the user has access to the correct group, then reboot and re-check."