Ajouter Creation-Groupe.ps1
This commit is contained in:
parent
3387eab088
commit
c3bcd0d7a3
40
Creation-Groupe.ps1
Normal file
40
Creation-Groupe.ps1
Normal file
@ -0,0 +1,40 @@
|
||||
<#
|
||||
.Example
|
||||
$csv = Read-Host -Prompt "Please provide full path to Groups csv file"
|
||||
.\Creation-Groupe.ps1 -CSVfile $csv -Verbose
|
||||
PS C:\Tools> $csv = Read-Host -Prompt "Please provide full path to Groups csv file"
|
||||
Please provide full path to Groups csv file: c:\tools\groups.csv
|
||||
PS C:\Tools> .\Creation-Groupe.ps1 -CSVfile $csv -Verbose
|
||||
VERBOSE: Creating new Group 'Tier0ReplicationMaintenance' under 'OU=Groups,OU=Tier0,OU=Admin,DC=azureblog,DC=pl'
|
||||
VERBOSE: Creating new Group 'Tier1ServerMaintenance' under 'OU=Groups,OU=Tier1,OU=Admin,DC=azureblog,DC=pl'
|
||||
VERBOSE: Creating new Group 'ServiceDeskOperators' under 'OU=Groups,OU=Tier2,OU=Admin,DC=azureblog,DC=pl'
|
||||
VERBOSE: Creating new Group 'WorkstationMaintenance' under 'OU=Groups,OU=Tier2,OU=Admin,DC=azureblog,DC=pl'
|
||||
VERBOSE: Group 'tier1admins'already exists.
|
||||
VERBOSE: Group 'tier2admins'already exists.
|
||||
#>
|
||||
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[string] $CSVfile
|
||||
)
|
||||
$dNC = (Get-ADRootDSE).defaultNamingContext
|
||||
$groups = Import-Csv $CSVfile
|
||||
foreach ($group in $groups) {
|
||||
$groupName = $group.Name
|
||||
$groupOUPrefix = $group.OU
|
||||
$destOU = $group.OU + "," + $dNC
|
||||
$groupDN = "CN=" + $groupName + "," + $destOU
|
||||
$checkForGroup = Get-ADGroup -filter 'Name -eq $groupName' -ErrorAction SilentlyContinue
|
||||
If ($checkForGroup.count -eq 0 ) {
|
||||
Write-Verbose "Creating new Group '$($Group.samAccountName)' under '$destOU'"
|
||||
New-ADGroup -Name $Group.Name -SamAccountName $Group.samAccountName -GroupCategory $Group.GroupCategory -GroupScope $Group.GroupScope -DisplayName $Group.DisplayName -Path $destOU -Description $Group.Description
|
||||
If ($Group.Membership -ne "") {
|
||||
Write-Verbose "Adding Group Membership '$($Group.Membership)' for group '$($Group.samAccountName)'"
|
||||
Add-ADPrincipalGroupMembership -Identity $Group.samAccountName -MemberOf $Group.Membership
|
||||
}
|
||||
$error.Clear()
|
||||
}
|
||||
Else {
|
||||
Write-Verbose "Group '$($Group.samAccountName)'already exists."
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user