Eikatosh
-
Gesamte Inhalte
3 -
Registriert seit
-
Letzter Besuch
Beiträge erstellt von Eikatosh
-
-
Morgen,
Die User werde ich aus einer Datei entnehmen, dass ist aber noch nicht im Script hinterlegt. Mir geht es wirklich nur um den Ownership und das alle Einträge gelöscht werden. Leider sind immer unterschiedliche User im Ordner hinterlegt daher kann man die zu löschenden User nicht im Script mitgeben.
-
Einen schönen guten Tag,
Ich muss 1800 Usershares ändern. Dabei müssen alle Security Einträge gelöscht werden und nur bestimmte Gruppen gesetzt werden. Desweiteren muss der Owner angepasst werden.
Der User selbst wird per TextBox eingegeben.
Hier der Code:
$form = New-Object “System.Windows.Forms.Form”; $form.Width = 700; $form.Height = 300; $form.Text = "Share Berechtigung"; $form.StartPosition = [System.Windows.Forms.FormStartPosition]::CenterScreen; $textBox1 = New-Object “System.Windows.Forms.TextBox”; $textBox1.Left = 90; $textBox1.Top = 90; $textBox1.width = 500; $Button1=New-Object "System.Windows.Forms.Button"; $Button1.Left = 270; $Button1.Top = 120; $Button1.width = 100; $Button1.Text="Anpassen"; $eventHandler = [System.EventHandler]{ $textBox1.Text; $form.Close();}; $button1.Add_Click( { $ordner =$textBox1.Text; $temp = "\\Servername\usershare\"+ $textBox1.Text; New-Item -ItemType directory -Path $temp $Acl = Get-Acl $temp $Ar = New-Object system.security.accesscontrol.filesystemaccessrule($ordner,"FullControl","Allow") $Ar1 = New-Object system.security.accesscontrol.filesystemaccessrule("Administrators","FullControl","Allow") $Ar2 = New-Object system.security.accesscontrol.filesystemaccessrule("CREATOR OWNER","FullControl","Allow") $Ar3 = New-Object system.security.accesscontrol.filesystemaccessrule("SYSTEM","FullControl","Allow") $Acl.SetAccessRule($Ar) $Acl.SetAccessRule($Ar1) $Acl.SetAccessRule($Ar2) $Acl.SetAccessRule($Ar3) Set-Acl ($temp) $Acl $username=$ordner $ID = new-object System.Security.Principal.NTAccount($username) $acl.SetOwner($ID) set-acl -path $temp -aclObject $acl Get-ChildItem -Path $temp -recurse | set-acl -aclObject $acl } ) $form.Controls.Add($button1); $form.Controls.Add($textBox1); $ret = $form.ShowDialog();
Ich weiß leider nicht wie man alle Einträge der Security löscht und das Script für SetOwner funktioniert leider nicht. Es wird folgendes ausgegeben: "Die Sicherheits-ID darf nicht der Besitzer dieses Objekts sein."
Hoffe jemand kann mir bei diesem Problem helfen.
Security Änderung eines Shares
in Windows Forum — Scripting
Geschrieben
Ich hab's mir angesehen. Problem dabei ist das in den Security Einträgen viele Unterschiedliche User sind, die da nicht rein dürfen(Jeder Ordner hat andere User drin stehen).
Deshalb hatte ich gefragt ob es ein Script gibt was wirklich alles daraus entfernt.
Der Teil beinhaltet nur die Einträge die später drin stehen müssen.