Suche Skript, welches Kennwortkomplexität prüfen kann
Moin Kollegen.
Ich möchte einem Skript ein Kennwort übergeben. Es soll jedoch vor der Weiterverarbeitung geprüft werden, ob es den folgenden Komplexitätsanforderungen genügt:
Zwingend enthalten: Groß-,Kleinbuchstaben, Sonderzeichen und Zahlen.
Länge: festzulegende Mindestlänge (meinetwegen 9)
Kennt jemand sowas in Skriptform für Windows?
Ich möchte einem Skript ein Kennwort übergeben. Es soll jedoch vor der Weiterverarbeitung geprüft werden, ob es den folgenden Komplexitätsanforderungen genügt:
Zwingend enthalten: Groß-,Kleinbuchstaben, Sonderzeichen und Zahlen.
Länge: festzulegende Mindestlänge (meinetwegen 9)
Kennt jemand sowas in Skriptform für Windows?
Please also mark the comments that contributed to the solution of the article
Content-Key: 232614
Url: https://administrator.de/contentid/232614
Printed on: May 8, 2024 at 05:05 o'clock
6 Comments
Latest comment
Hi DWW,
könnte man so mit Powershell machen:
(Die Funktion gibt $true zurück wenn das Password den Anforderungen entspricht, und $false wenn nicht / Nicht erlaubte Passwörter oder eine Passwort-Ausnahmeliste lässt sich ebenfalls einbinden)
Grüße Uwe
könnte man so mit Powershell machen:
(Die Funktion gibt $true zurück wenn das Password den Anforderungen entspricht, und $false wenn nicht / Nicht erlaubte Passwörter oder eine Passwort-Ausnahmeliste lässt sich ebenfalls einbinden)
function Check-PasswordComplexity([string]$pwd){
# Liste mit nicht erlaubten Passwörtern festlegen
$notallowed = @('Password123#','#PassW0rd')
# Alternativ die Liste der nicht erlaubten Passwörter aus einer Datei laden (jedes Passwort in einer eigenen Zeile)
# $notallowed = gc "C:\passwords.txt"
# Minimale Länge der Passwörter festlegen
$minlength = 9
if ($pwd.length -lt $minlength){
write-host "Das Passwort hat nicht die erforderliche Mindestlänge" -ForegroundColor Red
return $false
}
if ($notallowed -contains $pwd){
write-host "Password ist in der Liste der nicht erlaubten Passwörter!" -ForegroundColor Red
return $false
}
if ($pwd -cmatch "[a-zaöü]" -and $pwd -cmatch "[A-ZÖÄÜ]" -and $pwd -match "\d" -and $pwd -match "\W"){
write-host "Password entspricht den Anforderungen" -ForegroundColor Green
return $true
}else{
write-host "Das Password entspricht nicht den Komplexitätsanforderungen (GROSSBuchstaben, kleinBuchstaben und Sonderzeichen)" -ForegroundColor Red
return $false
}
}
# Funktion mit Passwort aufrufen (WICHTIG: 'einfache' Anführungszeichen benutzen)
Check-PasswordComplexity '12kjhhfeu3#664'