Powershell 创建完全由每个字符的18个组成的密码文件
我想创建一个脚本,生成一个文本文件,每个字符在键盘上重复18次。大致如下: aaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbb 。。。等等我是否可以为每个对象提供一个函数来实现这一点Powershell 创建完全由每个字符的18个组成的密码文件,powershell,azure-active-directory,Powershell,Azure Active Directory,我想创建一个脚本,生成一个文本文件,每个字符在键盘上重复18次。大致如下: aaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbb 。。。等等我是否可以为每个对象提供一个函数来实现这一点 我为什么要这样做?我正在更改密码策略,该策略要求最小长度为18个字符,但不强制执行复杂性。我想创建一个基线阻止列表,防止有人使用这些基于单个字符的密码(如果Microsoft允许您只配置一个自定义复杂性策略,以防止x个重复字符,我会这样做
我为什么要这样做?我正在更改密码策略,该策略要求最小长度为18个字符,但不强制执行复杂性。我想创建一个基线阻止列表,防止有人使用这些基于单个字符的密码(如果Microsoft允许您只配置一个自定义复杂性策略,以防止x个重复字符,我会这样做)。我想PowerShell中内置了一些东西来指定整个ASCII字符集(这对于本练习来说已经足够了),但我找不到它。您可以使用下面的代码段
#Initializing the list variable
$list= @()
#intializing the variable $c with the byte of A
[byte]$c = [char]'A'
#iterating throug A - z (ABCD...Z...abcd...z)
for ([byte]$c = [char]'A'; $c -le [char]'z'; $c++)
{
$list += $(([char]$c).ToString() * 18)
}
#Outputing the list to a file
$list |Out-File D:\list.txt
样本输出:
“Z”和“a”之间会有一些特殊字符,如果您不需要它们,可以有两个迭代循环
for ([byte]$c = [char]'A'; $c -le [char]'Z'; $c++) {.....}
for ([byte]$c = [char]'a'; $c -le [char]'z'; $c++) {.....}
为什么不启用复杂性需求?将自动为18个重复字符打分,分数太低,以至于无法接受它。
'a'..'z'+'a'..'z'{z'}{z'*18}
您还可以使用ascii可打印范围:[char[]](32..126){[string]$\u*18}
只是为了添加,如果我没有错的话,密码“aaaaaaaaaa”将被视为弱密码,不允许设置