Advertisement
Guest User

Untitled

a guest
Jun 16th, 2018
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #user creation script
  2. $listOU=Import-Csv -delimiter ";" -Path "C:\scripts\OU.csv"
  3. ForEach($OU in $listOU){
  4.  
  5. try{
  6. #Get Name and Path from the source file
  7. $OUName = $OU.Name
  8. $OUPath = $OU.Path
  9.  
  10. #Display the name and path of the new OU
  11. Write-Host -Foregroundcolor Yellow $OUName $OUPath
  12.  
  13. #Create OU
  14. New-ADOrganizationalUnit -Name "$OUName" -Path "$OUPath"
  15.  
  16. #Display confirmation
  17. Write-Host -ForegroundColor Green "OU $OUName created"
  18. }catch{
  19.  
  20. Write-Host $error[0].Exception.Message
  21. }
  22.  
  23. }-Path "$alleOU" -ProtectedFromAccidentalDeletion $true
  24.  
  25. #groepen creator script
  26.  
  27. $csv = Import-Csv -delimiter ";" -Path "C:\scripts\groepen.csv"
  28.  
  29. ForEach ($item In $csv)
  30.     {
  31.         $create_group = New-ADGroup -Name $item.GroupName -GroupCategory $item.GroupCategory -groupScope $item.GroupScope
  32.         Write-Host -ForegroundColor Green "Group $($item.GroupName) created!"
  33.     }
  34.  
  35. Catch
  36. {
  37.     $ErrorMessage = $_.Exception.Message
  38.     $FailedItem = $_.Exception.ItemName
  39.  
  40.     Break
  41. }
  42.  
  43. #koppeling van DL naar GG
  44. $global      = Get-ADGroup -Filter * -Properties * | Where-Object {$_.GroupScope -eq 'Global'}
  45. $domainLocal = Get-ADGroup -filter * -Properties * | Where-Object {$_.GroupScope -eq 'DomainLocal'}
  46.  
  47. foreach ($group in $domainLocal) {
  48.  
  49.     Add-AdGroupMember -Identity $group.ObjectGuid -Member $global
  50.  
  51.  
  52. }
  53.  
  54. #create active directory users
  55. $users = Import-Csv -delimiter ";" -path c:/scripts/users3.csv
  56.  
  57. foreach($user in $users)
  58. {
  59. $fullname = $user.firstname + " " + $User.middlename + $user.lastname
  60. $firstname = $user.firstname
  61. $lastname = $user.lastname
  62. $domain = "@cybertech.nl"
  63. $upn = $user.firstname + $User.middlename + $user.lastname + $domain
  64. $ou = $user.ou
  65. $password = "Welkom01!"
  66. $setpassword = ConvertTo-SecureString $password -AsPlainText -Force
  67. $Usermiddlename = $User.middlename
  68. $first,$last = ($firstname.toUpper()).Split(" ")
  69. $letter = $first[0]
  70. $username = $letter + $User.middlename + $lastname
  71.  
  72. New-ADUser -Name $username -displayname $fullname `
  73. -GivenName $firstname -surname $lastname `
  74. -SamAccountName $lastname `
  75. -UserPrincipalName $upn `
  76. -AccountPassword $setpassword -Enabled $true -PassThru `
  77. -ChangePasswordAtLogon $false
  78.  
  79. }
  80.  
  81.  
  82.  
  83. $toevoegrechten = Get-ADUser -Identity $.user -filter *
  84.  
  85. foreach($user in $toevoegrechten){
  86.  
  87. Add-ADGroupMember -Identity $item.GroupCategory -Member $_.UserName -WhatIf  
  88.  
  89. }
  90.  
  91.  
  92. Import-CSV "C:\Scripts\Users.csv" | %  
  93.  
  94.     $colRights      = [System.Security.Accesscontrol.FileSystemRights]"Read, Write, Modify"
  95.     $inherltanceFlag = [system.security.accesscontrol.InheritanceFlags]"containerInherit, objectInherit"
  96.     $propagationFlag = [system.security.accesscontrol.PropagationFlags]"None"
  97.    
  98.     $objType = [System.Security.Accesscontrol.AccesscontrolType]::Allow
  99.  
  100.     #Get Acl
  101.     $ACL = Get-ACl $userObject.HomeDriyePath
  102.  
  103.  
  104.     $acl.SetAccessRuleProtection($Faise, $True)
  105.  
  106.     $user = 'domain\' + $userObject.UserName
  107.     $SecObject = $user
  108.        
  109.     $objuser = New-object System.Security.Principal.NTAccount($Secobject)
  110.  
  111.     $ACE = New-object System.Security.Accesscontrol.FileSystemAccessRule($objuser, $colRights, $InheritanceFlag, $PropagationFlag, $objType)
  112.  
  113.     $ACL. AddAccessRule($ACE)
  114.  
  115.     Set-ACL $userObject.HomeDriyePath $ACL
  116.  
  117.  
  118. New-SmbShare  'data' -path d:\data -Name 'data'
  119.  
  120. $setting = get-wmiobject -Class Win32_LogicalShareSecuritySetting -filter "Name='data'"
  121.  
  122. $dacls = $setting.GetSecurityDescriptor().Descriptor.Dacl
  123.  
  124. $revised = @()
  125.  
  126. foreach ($dacl in $dacls) {
  127. if ($dacl.Trustee.Name -ne 'Everyone') {
  128. $revised += $dacl
  129.  
  130. #export output to a file
  131.  
  132. Get-ADUser -Filter * |
  133.   Select -Property GivenName,Surname,Name,SAMAccountName,DistinguishedName |
  134.   Export-CSV -Delimiter ";" "C:\\ADUsers.csv" -NoTypeInformation -Encoding UTF8
  135.  
  136.  
  137. Get-ADgroup -Filter * |
  138.   Select -Property Name |
  139.   Export-CSV -Delimiter ";" "C:\\ADgroup.csv" -NoTypeInformation -Encoding UTF8
  140.  
  141. Get-ADOrganizationalUnit -Filter * |
  142.   Select -Property Name |
  143.   Export-CSV -Delimiter ";" "C:\\AD-OU.csv" -NoTypeInformation -Encoding UTF8
  144.  
  145. Get-smbshare |
  146.   Select -Property Name |
  147.   Export-CSV -Delimiter ";" "C:\\AD-share.csv" -NoTypeInformation -Encoding UTF8
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement