mirror of
https://gitlab.com/ch-tbz-it/Stud/m159.git
synced 2024-11-21 17:22:00 +01:00
diverses
This commit is contained in:
parent
051b98eeb1
commit
7c023e37a9
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,4 +1,4 @@
|
||||
# Aufgabe 5: Active Directory erste Schritte (2 Punkt)
|
||||
# Aufgabe 5: Active Directory erste Schritte (4 Punkt)
|
||||
|
||||
Für diese Aufgabe müssen Sie wissen, wie man Freigaben und Berechtigungen unter Windows verwendet. Falls Ihnen der Unterschied zwischen Freigabe- und NTFS-Berechtigungen nicht bekannt ist, Fragen Sie Ihre Klassenkameraden oder lesen Sie es im Internet nach. Falls Sie nicht sicher sind, Fragen Sie die Lehrperson.
|
||||
|
||||
@ -6,7 +6,7 @@ Für diese Aufgabe müssen Sie wissen, wie man Freigaben und Berechtigungen unte
|
||||
>
|
||||
> Im Ordner resources finden Sie verschiedene PowerShell Skripte, mit dem Sie diese Aufgabe beschleunigen können. Dieses Skript wurde einst von einem sehr guten Schüler erstellt, es fehlen aber noch Einstellungen. Kannst Du das PS-File verbessern? Falls ja zeig deine Idee dem Lehrer.
|
||||
|
||||
## User und Gruppen anlegen (0.5 Punkt)
|
||||
## User und Gruppen anlegen (1 Punkt)
|
||||
|
||||
|
||||
|
||||
@ -48,7 +48,7 @@ Sie müssen wissen, wie UNC-Pfade aufgebaut sind und verwendet werden können
|
||||
|
||||
|
||||
|
||||
## Ordner und Freigaben erstellen + ABE aktivieren (1 Punkt)
|
||||
## Ordner und Freigaben erstellen + ABE aktivieren (3 Punkt)
|
||||
|
||||
- Erstellen Sie die Ordner- und Freigabestruktur wie in der Tabelle aufgeführt
|
||||
|
||||
|
@ -0,0 +1,40 @@
|
||||
$Path = Read-Host -Prompt "Enter the folder path" #fragt den Pfad vom CSV ab
|
||||
|
||||
$Users = Import-Csv -Delimiter ";" -Path $Path #Importiert CSV
|
||||
|
||||
|
||||
$abfrage = Read-Host "Wollen Sie die Berechtigungen im CSV übernehmen? [Y]"
|
||||
|
||||
function smbcreate {
|
||||
if(!(Get-SMBShare -Name $Name -ea 0)){
|
||||
Write-Host -ForegroundColor Red "Creating Share $Name & NTFS permissions $Permission for $Abteilung on $Path as $Remote"
|
||||
New-SMBShare -Name "$Name" -Path $Path
|
||||
Grant-SmbShareAccess -Name $Name -AccountName Jeder -AccessRight Full
|
||||
$acl = Get-Acl $Remote
|
||||
$AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("$Abteilung","$Permission","Allow")
|
||||
$acl.SetAccessRule($AccessRule)
|
||||
$acl | Set-Acl $Remote
|
||||
Write-Host -ForegroundColor Green "Sucess $Name created"
|
||||
}
|
||||
else{
|
||||
Write-Host -ForegroundColor Red "Share does exist, creating NTFS permission $Permission for $Abteilung on $Remote"
|
||||
$acl = Get-Acl $Remote
|
||||
$AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("$Abteilung","$Permission","Allow")
|
||||
$acl.SetAccessRule($AccessRule)
|
||||
$acl | Set-Acl $Remote
|
||||
Write-Host -ForegroundColor Green "Sucess NTFS on $Name"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if($abfrage -eq "Y"){
|
||||
foreach($User in $Users){
|
||||
|
||||
$Path = $User.FreigabePfad
|
||||
$Name = $User.FreigabeName
|
||||
$Permission = $User.Berechtigung
|
||||
$Abteilung = "SKITTLE\" + $User.Abteilung
|
||||
$Remote = "\\ws1\" + $Name
smbcreate
|
||||
}
|
||||
}
|
||||
else{exit}
|
63
03_Aufträge/Aufträge/resources/Aufgabe05_Usercreate.ps1
Normal file
63
03_Aufträge/Aufträge/resources/Aufgabe05_Usercreate.ps1
Normal file
@ -0,0 +1,63 @@
|
||||
#Beschrieb: ADUser erstellen oder Löschen mit CSV
|
||||
#Autor: Simone Piccolo
|
||||
#Zuletzt bearbeitet am: 04.01.22
|
||||
|
||||
#=======================================================================
|
||||
|
||||
Import-Module ActiveDirectory
|
||||
|
||||
$Path = Read-Host -Prompt "Enter the folder path" #fragt den Pfad vom CSV ab
|
||||
$PathLog = Read-Host -Prompt "Enter the Lofile path" #Frag ab wo Logfile erstellt werden soll
|
||||
|
||||
$ErstelltLog = $PathLog + "/" + "BenutzerErstellt.txt"
|
||||
$DeleteLOG = $PathLog+ "/" + "BenutzerGelöscht.txt"
|
||||
|
||||
|
||||
|
||||
$Users = Import-Csv -Delimiter ";" -Path $Path #Importiert CSV
|
||||
|
||||
|
||||
$abfrage = Read-Host "Wollen Sie einen Benutzer erstellen oder löschen?" #Abfrage ob Löschen oder erstellen
|
||||
|
||||
if($abfrage -eq "erstellen"){ #Wenn die Abfrage, erstellen entspricht, wird ein Benutzer erstellt.
|
||||
foreach($User in $Users){ #Benutzer werden vom CSV in Variabeln gesetzt
|
||||
|
||||
$Firstname = $User.Firstname
|
||||
$Lastname = $User.Lastname
|
||||
$Password = $User.Password
|
||||
$Abteilung = $User.Abteilung
|
||||
$Displayname = $User.Firstname + " " + $User.Lastname
|
||||
|
||||
$OU = "Ou=$Abteilung, OU=Benutzer, Ou=skittle, DC=skittle, DC=ch" #Pfad vom AD wo User erstellt werden soll
|
||||
|
||||
New-Aduser -Name "$Displayname" -GivenName "$Firstname" -Surname "$Lastname" -DisplayName "$Displayname" -AccountPassword (ConvertTo-SecureString $Password -AsPlainText -Force) -Path $OU -Enabled $true
|
||||
New-ADGroup "$Abteilung" -Path "OU=Gruppen, Ou=skittle, DC=skittle, DC=ch" -GroupCategory Security -GroupScope Global -PassThru –Verbose
|
||||
Add-ADGroupMember -Identity $Abteilung -Members $Displayname
|
||||
|
||||
New-Item $ErstelltLog #Logfile wird erstellt
|
||||
Set-Content $ErstelltLog "Der Benutzer $Displayname wurde erstellt"
|
||||
}
|
||||
}
|
||||
elseif($abfrage -eq "löschen"){
|
||||
foreach($User in $Users){ #Benutzer werden vom CSV in Variabeln gesetzt
|
||||
|
||||
$Firstname = $User.Firstname
|
||||
$Lastname = $User.Lastname
|
||||
$Password = $User.Password
|
||||
$Abteilung = $User.Abteilung
|
||||
$Displayname = $User.Firstname + " " + $User.Lastname
|
||||
|
||||
|
||||
$OU = "Ou=$Abteilung, OU=Benutzer, Ou=Soltec, DC=soltec, DC=lan" #Pfad vom AD wo User erstellt werden soll
|
||||
|
||||
Remove-ADUser -Identity $Displayname -Confirm:$False
|
||||
|
||||
New-Item $DeleteLOG #Logfile wird erstellt
|
||||
Set-Content $DeleteLOG "Der Benutzer $Diyplayname wurde gelöscht" #Logfile wird erstellt
|
||||
} #Wenn die Abfrage, löschen entspricht, wird der Benutzer mit dem Displaynamen, der im CSV mit Vornamen und Nachnamen angeben wird, gelöscht.
|
||||
}
|
||||
else{ #Wenn es keinem vom beiden entspricht
|
||||
exit
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user