다음을 통해 공유


Gestion des GPO avec PowerShell

Bonjour,

 

L’article suivant permet de créer des GPO sous 2008 et 2008 R2 avec PowerShell.

Pour faire cela, on appelle l’objet COM GPMgmt.GPM

$gpobj = New-Object -ComObject GPMgmt.GPM

Afin de s’assurer que l’objet COM est bien appelé, on affiche les détails de la variable $gpobj :

$gpobj | gm

 

image

Ces méthodes sont décrites dans ce lien :

https://msdn.microsoft.com/en-us/library/aa814177(VS.85).aspx

image

On appelle ensuite la méthode constants() et on précise le domaine dans lequel on va créer la GPO.

$gpmConstants = $gpobj.GetConstants()

clip_image002

HRESULT GetDomain(

[in] BSTR bstrDomain,

[in] BSTR bstrDomainController,

[in] long lDCFlags,

[out] IGPMDomain **plIGPMDomain);

clip_image004

Huble.com : domain name

UseAnyDC est le flag de l’argument.

 

Voir https://msdn.microsoft.com/en-us/library/aa814309(VS.85).aspx

IGPM::GetDomain Method

Creates and returns a GPMDomain object that corresponds to the specified domain.

clip_image002[4]

clip_image004[4]

$gpmDomain =$gpobj.GetDomain(“huble.com”, “”, $gpmConstants.UseAnyDC)

clip_image006

Maintenant, si on veut voir les méthodes de GetDomain(), on utilise gm (pour get-member):

$gpmDomain | gm

clip_image008

La méthode CreateGpo() permet de créer un GPO dans huble.com

$gpmNewGpo = $gpmDomain.CreateGPO()

 

On donne un nom à cette nouvelle GPO.

$gpmNewGpo.DisplayName = “This GPO is created by PowerShell"

clip_image010

$gpmNewGpo.Description = “This is a description of the GPO created by PowerShell"

Pour vérifier que c’est bien créé, on utilise la MMC “Group Policy Managementclip_image012

 

. Création d’un lien entre cette nouvelle GPO avec une OU existante, par exemple avec l’OU1 :

Pour cela, on va appeler les méthodes GetSOM() et CreateGPOLink() :

$som = $gpmdomain.GetSOM(“OU=OU1,DC=huble,dc=com”)

clip_image014

 

$som.CreateGPOLink(1,$gpmNewGPO)

clip_image016

 

Et enfin, utiliser GPMC pour vérifier la résultat de la création.

clip_image018

Comments