Benutzer mit den meisten Antworten
Anordnung einer GPO mit VB ändern

Frage
-
Hallo Forum
Ich suche eine Möglichkeit, mit einem VB Skript/Programm ein GPO z.B. vor die Default Domain Policy zu schieben. Lösungsmöglichkeiten mit der Powershell fallen leider aus. Mit RSOP_GPLink kann ich offenbar nur lesend auf die Linkorder zugreifen. Kennt jemand ein Codefragment in VB mit dem man die Reihenfolge ändern kann? Ich würde den ersten, der eine Lösung anbietet, in mein Nachtgebet aufnehmen:-)
Danke
fuzzi0815
Antworten
-
> lesend auf die Linkorder zugreifen. Kennt jemand ein Codefragment in VB> mit dem man die Reihenfolge ändern kann? Ich würde den ersten, der eine> Lösung anbietet, in mein Nachtgebet aufnehmen:-)Dann fang schon mal an zu beten :-)Reihenfolge festlegen heißt "erst löschen, dann neu linken an derrichtigen Position":name = "Name Deiner GPO..."strOU = "DN der OU relativ zur Domäne" 'Leer lassen für Link an derDomäne selbstintPos = 1 'Link-Position - "1" = ganz oben, "-1" = ganz untenbEnforced = False 'ErzwungenSet adSys = CreateObject("ADSystemInfo")strDomainName = adSys.DomainDNSNameSet gpm = CreateObject( "GPMGMT.GPM" )Set Constants = GPM.GetConstants()Set gpmDomain = gpm.GetDomain( strDomainName, "", Constants.UseAnyDC )strLDAPSuffix = gpmDomain.GetSOM( "" ).PathSet objGPO = getGPObyName( name, gpmDomain )If strOU = "" ThenSet objSOM = gpmDomain.GetSOM( strLDAPSuffix )ElseSet objSOM = gpmDomain.GetSOM( strOU & "," & strLDAPSuffix )End IfSet somGPOLinks = objSOM.GetGPOLinksFor Each somGPOLink in somGPOLinksIf UCase( objGPO.ID ) = UCase( somGPOLink.GPOID ) thensomGPOLink.DeleteNextSet somGPOLink = objSOM.CreateGPOLink( intPos, objGPO )somGPOLink.enforced = bEnforcedsomGPOLink.enabled = True
Martin
Mal ein GUTES Buch über GPOs lesen?
NO THEY ARE NOT EVIL, if you know what you are doing: Good or bad GPOs?
And if IT bothers me - coke bottle design refreshment :))- Als Antwort markiert Raul TalmaciuMicrosoft contingent staff Donnerstag, 31. Juli 2014 08:39
-
> Vielen Dank für das Codebeispiel, welches ich gut nachvollziehen kannWas mir grad noch einfällt: Wenn Du ADSI-Skripting gut kannst, dannkönntest Du auch das gPLink-Attribut der OUs auslesen und die Einträgedarin neu sortieren. Ist im Ergebnis das gleiche :-)
Martin
Mal ein GUTES Buch über GPOs lesen?
NO THEY ARE NOT EVIL, if you know what you are doing: Good or bad GPOs?
And if IT bothers me - coke bottle design refreshment :))- Als Antwort markiert Raul TalmaciuMicrosoft contingent staff Donnerstag, 31. Juli 2014 08:39
Alle Antworten
-
> lesend auf die Linkorder zugreifen. Kennt jemand ein Codefragment in VB> mit dem man die Reihenfolge ändern kann? Ich würde den ersten, der eine> Lösung anbietet, in mein Nachtgebet aufnehmen:-)Dann fang schon mal an zu beten :-)Reihenfolge festlegen heißt "erst löschen, dann neu linken an derrichtigen Position":name = "Name Deiner GPO..."strOU = "DN der OU relativ zur Domäne" 'Leer lassen für Link an derDomäne selbstintPos = 1 'Link-Position - "1" = ganz oben, "-1" = ganz untenbEnforced = False 'ErzwungenSet adSys = CreateObject("ADSystemInfo")strDomainName = adSys.DomainDNSNameSet gpm = CreateObject( "GPMGMT.GPM" )Set Constants = GPM.GetConstants()Set gpmDomain = gpm.GetDomain( strDomainName, "", Constants.UseAnyDC )strLDAPSuffix = gpmDomain.GetSOM( "" ).PathSet objGPO = getGPObyName( name, gpmDomain )If strOU = "" ThenSet objSOM = gpmDomain.GetSOM( strLDAPSuffix )ElseSet objSOM = gpmDomain.GetSOM( strOU & "," & strLDAPSuffix )End IfSet somGPOLinks = objSOM.GetGPOLinksFor Each somGPOLink in somGPOLinksIf UCase( objGPO.ID ) = UCase( somGPOLink.GPOID ) thensomGPOLink.DeleteNextSet somGPOLink = objSOM.CreateGPOLink( intPos, objGPO )somGPOLink.enforced = bEnforcedsomGPOLink.enabled = True
Martin
Mal ein GUTES Buch über GPOs lesen?
NO THEY ARE NOT EVIL, if you know what you are doing: Good or bad GPOs?
And if IT bothers me - coke bottle design refreshment :))- Als Antwort markiert Raul TalmaciuMicrosoft contingent staff Donnerstag, 31. Juli 2014 08:39
-
Hi Ben
Vielen Dank für deine Bemühungen. Ich suchte aber nach einer Lösung ohne Verwendung der Gruppenrichtlinienverwaltung. Die Lösung von Martin, die auf deine folgte, passt auf meine Anfrage sehr gut. Trotzdem Danke für die aufgewendete Zeit.
Gruß
fuzzi0815
-
Hallo Martin
Vielen Dank für das Codebeispiel, welches ich gut nachvollziehen kann und den Hinweis auf ein gutes Buch. Unser Projektetat wird die Beschaffung noch hergeben. Man kann nicht genug Literatur im Schrank haben und deines sollte offenbar nicht fehlen:-). Hab schon beim Anlesen einiges gelernt.
Vielen Dank für die aufgewendete Zeit.
fuzzi0815
-
> gutes Buch+1 :-)
Martin
Mal ein GUTES Buch über GPOs lesen?
NO THEY ARE NOT EVIL, if you know what you are doing: Good or bad GPOs?
And if IT bothers me - coke bottle design refreshment :)) -
> Vielen Dank für das Codebeispiel, welches ich gut nachvollziehen kannWas mir grad noch einfällt: Wenn Du ADSI-Skripting gut kannst, dannkönntest Du auch das gPLink-Attribut der OUs auslesen und die Einträgedarin neu sortieren. Ist im Ergebnis das gleiche :-)
Martin
Mal ein GUTES Buch über GPOs lesen?
NO THEY ARE NOT EVIL, if you know what you are doing: Good or bad GPOs?
And if IT bothers me - coke bottle design refreshment :))- Als Antwort markiert Raul TalmaciuMicrosoft contingent staff Donnerstag, 31. Juli 2014 08:39
-
Nice :-)
MVP Group Policy - Mythen, Insiderinfos und Troubleshooting zum Thema GPOs: Let's go, use GPO!
-
> Nice :-)Um ehrlich zu sein: War schon fertig. War mal Bestandteil einerGP-Deployment-Lösung, die das Linken beherrschen musste :)
Martin
Mal ein GUTES Buch über GPOs lesen?
NO THEY ARE NOT EVIL, if you know what you are doing: Good or bad GPOs?
And if IT bothers me - coke bottle design refreshment :))