none
icacls-Rechtevergabe (OI) RRS feed

  • Frage

  • Hallo liebe Community,

    ich habe folgendes Ziel:

    Die icacls Rechte auf ein Laufwerk und alle Unterordner (in diesem Beispiel v:) sollen folgendermaßen aussehen:

    PS > icacls v:
    
    V: ERSTELLER-BESITZER:(OI)(CI)(IO)(F)
    
       NT-AUTORITÄT\SYSTEM:(OI)(CI)(F)
    
       beliebigerBenutzer:(OI)(CI)(F)


    Ich habe schon einiges rumprobiert und komme im Moment auf folgende Lösung:

    PS > icacls v:
    
    V: Test\Admin:(F)
    
       NT-AUTORITÄT\SYSTEM:(OI)(CI)(IO)(F)
    
       beliebigerBenutzer:(F)

    Ich glaube nach einger Recherche zu wissen,  was OI,CI usw. bedeuten. Aber immer wenn ich versuche derartige Rechte zu vergeben. z.B.: icacls v: /grant:r "beliebigerBenutzer":(OI)(CI)erhalte ich den Fehler, das OI nicht als Name eines CMDlet erkannt wird...

    Kann mit jemand die richtige Syntax sagen, um die oben genannte Ausgabe nachzubilden?

    Danke im Vorraus. Falls Ihr weitere Infos braucht stehe ich gerne zur Verfügung.

    Dienstag, 10. November 2020 15:37

Antworten

  • icacls w: /q /c /t /grant retest1\Admin:(OI)(CI)F


    Greetings/Grüße, Martin - https://mvp.microsoft.com/en-us/PublicProfile/5000017 Mal ein gutes Buch über GPOs lesen? - http://www.amazon.de/Windows-Server-2012--8-Gruppenrichtlinien/dp/3866456956 Good or bad GPOs? My blog - http://evilgpo.blogspot.com And if IT bothers me? Coke bottle design refreshment - http://sdrv.ms/14t35cq

    Freitag, 13. November 2020 10:29
  • Edit: Hab es jetzt!

    Es waren tatsächlich die Anführungszeichen.

    Gibt man ein:

    icacls x:\ /q /c /t /grant 'retest1\Admin:(OI)(CI)F'

    funktioniert es.

    Danke an alle Helfenden. :)


    Tobias Ordosch - response

    Montag, 30. November 2020 14:27

Alle Antworten

  • Moin,

    vielleicht rufst Du icacls mal in einer CMD-Shell und nicht in der PowerShell auf?

    Und poste bitte die Befehle, die Du verwendet hast.


    Evgenij Smirnov

    http://evgenij.smirnov.de

    Dienstag, 10. November 2020 16:14
  • Hi, danke für die Antwort.

    Bisher funktioniert:

    Mein Skript erstellt folgendes, eingebundenes Laufwerk. Ich führe dann folgendes aus: 

    C:\WINDOWS\system32>icacls W: #einfache Rechteabfrage
    W: VORDEFINIERT\Administratoren:(F)
       VORDEFINIERT\Administratoren:(OI)(CI)(IO)(F)
       NT-AUTORITÄT\SYSTEM:(F)
       NT-AUTORITÄT\SYSTEM:(OI)(CI)(IO)(F)
       NT-AUTORITÄT\Authentifizierte Benutzer:(M)
       NT-AUTORITÄT\Authentifizierte Benutzer:(OI)(CI)(IO)(M)
       VORDEFINIERT\Benutzer:(RX)
       VORDEFINIERT\Benutzer:(OI)(CI)(IO)(GR,GE)
    
    1 Dateien erfolgreich verarbeitet, bei 0 Dateien ist ein Verarbeitungsfehler aufgetreten.
    
    C:\WINDOWS\system32>takeown /F w: /R #werde Besitzer des Laufwerks
    
    C:\WINDOWS\system32>icacls  w:  /remove:g "Vordefiniert\Benutzer" /T #entfernen unerwünschter User
    
    C:\WINDOWS\system32>icacls w: /q /c /t /grant retest1\Admin:F #gewähren von Vollzugriff auf das Laufwerk und Unterordner
    
    icacls w: /q /c /t /grant ERSTELLER-BESITZER:F 
    
    C:\WINDOWS\system32>icacls  w:
    w: RETEST1\Admin:(F)
       NT-AUTORITÄT\SYSTEM:(F)
       NT-AUTORITÄT\SYSTEM:(OI)(CI)(IO)(F)
    
    
    

    Unten mein Ergebnis. Mir fehlen OI und CI. Mache ich irgenwas falsch. Mein GUI-Ergebnis sieht folgendermaßen aus:

    PS > icacls v:
    
    V: ERSTELLER-BESITZER:(OI)(CI)(IO)(F)
    
       NT-AUTORITÄT\SYSTEM:(OI)(CI)(F)
    
       beliebigerBenutzer:(OI)(CI)(F)

    Meine Frage ist nun, welchen Schritt habe ich vergessen? Oder ist das effektive Ergebnis gar dasselbe?

    Danke schonmal für eure Zeit. Falls noch was fehlt, gebt einfach Bescheid (ist erst mein zweiter Forumseintrag ever) :)

    Donnerstag, 12. November 2020 13:54
  • icacls w: /q /c /t /grant retest1\Admin:(OI)(CI)F


    Greetings/Grüße, Martin - https://mvp.microsoft.com/en-us/PublicProfile/5000017 Mal ein gutes Buch über GPOs lesen? - http://www.amazon.de/Windows-Server-2012--8-Gruppenrichtlinien/dp/3866456956 Good or bad GPOs? My blog - http://evilgpo.blogspot.com And if IT bothers me? Coke bottle design refreshment - http://sdrv.ms/14t35cq

    Freitag, 13. November 2020 10:29
  • Hi Martin,

    so hab ich ursprünglich auch gedacht, dass es funktionieren müsste. Ich erhalte aber immer folgende Melungen:

    PS C:\WINDOWS\system32> icacls w:
    w: RETEST1\Admin:(F)
       NT-AUTORITÄT\SYSTEM:(F)
       NT-AUTORITÄT\SYSTEM:(OI)(CI)(IO)(F)
    
    1 Dateien erfolgreich verarbeitet, bei 0 Dateien ist ein Verarbeitungsfehler aufgetreten.
    PS C:\WINDOWS\system32> icacls w: /q /c /t /grant retest1\Admin:(OI)(CI)F
    OI : Die Benennung "OI" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren
    Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern enthalten), und
    wiederholen Sie den Vorgang.
    In Zeile:1 Zeichen:42
    + icacls w: /q /c /t /grant retest1\Admin:(OI)(CI)F
    +                                          ~~
        + CategoryInfo          : ObjectNotFound: (OI:String) [], CommandNotFoundException
        + FullyQualifiedErrorId : CommandNotFoundException
    
    PS C:\WINDOWS\system32> icacls w: /q /c /t /grant "retest1\Admin":(OI)(CI)F
    OI : Die Benennung "OI" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren
    Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern enthalten), und
    wiederholen Sie den Vorgang.
    In Zeile:1 Zeichen:44
    + icacls w: /q /c /t /grant "retest1\Admin":(OI)(CI)F
    +                                            ~~
        + CategoryInfo          : ObjectNotFound: (OI:String) [], CommandNotFoundException
        + FullyQualifiedErrorId : CommandNotFoundException
    
    PS C:\WINDOWS\system32>

    Hast du eine Idee? Ich bin mir eben nicht sicher, ob es nur ein Formfehler ist, oder ich was am vorgehen falsch mache.

    Freitag, 13. November 2020 11:13
  • Formfehler... Wenn Du das in Powershell ausführst, brauchst noch das eine oder andere Anführungszeichen. Oder einfacher, Du nimmst Start-Process und packst den Sermon hinten in die -Arguments.


    Greetings/Grüße, Martin - https://mvp.microsoft.com/en-us/PublicProfile/5000017 Mal ein gutes Buch über GPOs lesen? - http://www.amazon.de/Windows-Server-2012--8-Gruppenrichtlinien/dp/3866456956 Good or bad GPOs? My blog - http://evilgpo.blogspot.com And if IT bothers me? Coke bottle design refreshment - http://sdrv.ms/14t35cq

    Freitag, 13. November 2020 12:18
  • Danke für die Antwort und sorry das ich mich so lange nicht gemeldet habe. Habe das mit Start-Process jetzt getestet. Ich bekomme es im Moment leider noch nicht hin. Habe die Arguments sowohl mit, als auch ohne Anführungszeichen getestet.
    PS C:\Users\user> start-process icacls -Arguments x: /q /c /t /grant "retest1\Admin":(OI)(CI)F
    OI : Die Benennung "OI" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren
    Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern enthalten), und
    wiederholen Sie den Vorgang.
    In Zeile:1 Zeichen:69
    + ... rocess icacls -Arguments x: /q /c /t /grant "retest1\Admin":(OI)(CI)F
    +                                                                  ~~
        + CategoryInfo          : ObjectNotFound: (OI:String) [], CommandNotFoundException
        + FullyQualifiedErrorId : CommandNotFoundException
    
    PS C:\Users\user> start-process icacls -Arguments "x: /q /c /t /grant "retest1\Admin":(OI)(CI)F2
    >> ^C
    PS C:\Users\user> start-process icacls -Arguments "x: /q /c /t /grant "retest1\Admin":(OI)(CI)"
    Start-Process : Es wurde kein Parameter gefunden, der dem Parameternamen "Arguments" entspricht.
    In Zeile:1 Zeichen:22
    + start-process icacls -Arguments "x: /q /c /t /grant "retest1\Admin":( ...
    +                      ~~~~~~~~~~
        + CategoryInfo          : InvalidArgument: (:) [Start-Process], ParameterBindingException
        + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.StartProcessCommand
    
    PS C:\Users\user> start-process icacls -Arguments x: /q /c /t /grant "retest1\Admin":(OI)(CI)
    OI : Die Benennung "OI" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren
    Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern enthalten), und
    wiederholen Sie den Vorgang.
    In Zeile:1 Zeichen:69
    + ... process icacls -Arguments x: /q /c /t /grant "retest1\Admin":(OI)(CI)
    +                                                                   ~~
        + CategoryInfo          : ObjectNotFound: (OI:String) [], CommandNotFoundException
        + FullyQualifiedErrorId : CommandNotFoundException


    Tobias Ordosch - response

    Montag, 30. November 2020 13:18
  • Edit: Hab es jetzt!

    Es waren tatsächlich die Anführungszeichen.

    Gibt man ein:

    icacls x:\ /q /c /t /grant 'retest1\Admin:(OI)(CI)F'

    funktioniert es.

    Danke an alle Helfenden. :)


    Tobias Ordosch - response

    Montag, 30. November 2020 14:27