Avatar billede johncleese Nybegynder
06. oktober 2009 - 16:38 Der er 6 kommentarer og
1 løsning

fjerne brugere fra en sikkerhedsgruppe der ligger i en bestemt ud.

Hej Jeg prøver at´lave et script der løber alle brugere der er medlem af en sikkerhedsguppe (testGammel) og hvis de brugere der er medlem af sikkerhedsgruppen samtidigt ligger i en ou der hedder "minPlacering" så skal de fjernes fra gruppen.
men det virker ikke.
Er der nogen der kan se hvad jeg gør forkert?




Const ADS_PROPERTY_DELETE = 4

Set objGroup = GetObject("LDAP://CN=testGammel,ou=Sikkerhedsgrupper,dc=domaine,dc=net")

For Each strUser in objGroup.Member
    If InStr(strUser,"OU=MinPlacering,dc=domaine,dc=net") Then
        objGroup.PutEx ADS_PROPERTY_DELETE, "member", Array(strUser)
        objGroup.SetInfo
    End If
Next
Avatar billede johncleese Nybegynder
07. oktober 2009 - 14:26 #1
Er der ingen der kan ?
Avatar billede Slettet bruger
07. oktober 2009 - 15:05 #2
Hejsa.

Du er velkommen til at se om du kan bruge noget fra følgende sider:

1. List alle brugere i en bestemt AD gruppe: http://www.winfrastructure.net/article.aspx?BlogEntry=Get-all-users-in-specific-AD-group-using-VbScript

2. Find OU for bruger objekt i AD: http://www.winfrastructure.net/article.aspx?BlogEntry=Get-the-OU-a-user-is-in-using-ADO-and-VbScript
Avatar billede Slettet bruger
07. oktober 2009 - 15:51 #3
Hej igen.

Jeg fandt dit scenarie ret spændende og fik lyst til at lave et direkte eksempel som du nok godt kan bruge uden de store modifikatoner.

http://www.winfrastructure.net/article.aspx?BlogEntry=Removing-users-from-an-AD-group-using-VBScript

Håber det er ok, at jeg har 'kopieret' din problemstilling :-)
Avatar billede johncleese Nybegynder
08. oktober 2009 - 17:44 #4
Hej igen
tak for det. det virkede :)
lige et tillægs spørgsmpl:

men hvad nu hvis jeg vil prøve at tilføje til en gruppe istedet for at fjerne. jeg har prøvet det her:
at hvis de er i ouen der hedder test så skal de blive medlem af testgammel sikkerheds gruppen,

er det ikke Const ADS_PROPERTY_APPEND = 3 jeg skal bruge?
jeg har prøvet men jeg tror jeg mangler noget et eller andet..


Option Explicit
Dim objRootDSE, strDomain, objGroup, objUser, strdistinguishedName, arrDnComponents
Const ADS_PROPERTY_DELETE = 4
Const ADS_PROPERTY_APPEND = 3

' Retrieve domain information
Set objRootDSE = GetObject("LDAP://RootDSE")
strDomain = objRootDSE.Get("DefaultNamingContext")

' Bind to the group
Set objGroup = GetObject("LDAP://CN=testGammel,ou=Sikkerhedsgrupper," & strDomain)

' Iterate through the user objects in the group
For Each objUser In objGroup.Members

' Get the users distinguishedName
strdistinguishedName = objUser.distinguishedName

' Split users distinguishedName by ','
arrDnComponents = Split(objUser.distinguishedName, ",")

' Check to see if the user is in the OU

If Right(arrDnComponents(1), Len(arrDnComponents(1)) -3) = "test" Then

' Remove the user from the group

objGroup.PutEx ADS_PROPERTY_APPEND, "member", Array(strdistinguishedName)

'objGroup.PutEx ADS_PROPERTY_DELETE, "member", Array(strdistinguishedName)
objGroup.SetInfo
End If
Next

msgbox "færdig"
Avatar billede Slettet bruger
09. oktober 2009 - 11:13 #5
Avatar billede johncleese Nybegynder
17. oktober 2009 - 02:56 #6
Hej thomas
skal du lige have point ? :)
Avatar billede Slettet bruger
17. oktober 2009 - 08:00 #7
Jo, så skidt ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester