Ändern Sie pwpolicy in Sierra

Ich versuche, die standardmäßigen Sierra-Passwortrichtlinien durch zu ändern pwpolicy, indem ich beispielsweise versuche, die Tiefe des Passwortverlaufs von 24 auf 1 zu verringern, indem ich als sudoer drücke:

sudo pwpolicy setaccountpolicies "policyAttributePasswordHistoryDepth=1"

Aber es funktioniert nicht. Die Fehlermeldung lautet:

Fehler: Richtliniendatei nicht gefunden

Der policyIdentifier, den ich zu ändern versuche, wird (mit vielen anderen) aufgelistet, wenn ich darauf klicke, und pwpolicy getaccountpolicieslautet wie folgt:

<key>policyIdentifier</key>             
<string>ProfilePayload:[HASHED_VALUE]:pinHistory</string>           
<key>policyParameters</key>             
<dict>
  <key>policyAttributePasswordHistoryDepth</key>
  <integer>24</integer>             
</dict>

Wie geht man richtig vor?

Ich habe den Befehl nie verwendet, aber laut Manpage -setaccountpolicies"Nehmt ein Argument: den Namen der Datei, die die Richtlinien enthält."
Ich kann weder die Datei noch den Pfad für die XML-Richtlinienliste finden. Ich bin nur in der Lage, das durch den Befehl ‚pwpolicy‘ zu bekommen.

Antworten (1)

Ok, so habe ich es endlich gelöst, obwohl ich nicht sicher bin, ob es der richtige Weg ist.

Wie @patrix betonte, ist pwpolicy setaccountpoliciesder Pfad einer XML-Datei mit den Richtlinien erforderlich.

pwpolicy getaccountpoliciesgibt die aktuellen globalen Richtlinien im XML-Format an, also habe ich die Ausgabe in eine Datei mit umgeleitet pwpolicy getaccountpolicies > file.plist, die möglichen Info-Meldungen entfernt, die der Befehl schreiben könnte, und nur die XML-Struktur übrig gelassen.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>policyCategoryPasswordChange</key>
    <array>
    ...
    </array>
</dict>
</plist>

Dann habe ich den Wert, den ich in meinem Fall ändern wollte, in der von mir erstellten Datei geändert ( file.plist):

<key>policyIdentifier</key>             
<string>ProfilePayload:[HASHED_VALUE]:pinHistory</string>           
<key>policyParameters</key>             
<dict>
  <key>policyAttributePasswordHistoryDepth</key>
  <integer>2</integer>             
</dict>

Schließlich habe ich diese Datei verwendet, um die Richtlinie zu aktualisieren:pwpolicy setaccountpolicies /path/to/file.plist