Powershellでランダム文字列のパスワードを生成してみた

Powershell Powershell

Powershellでランダム文字列のパスワードを生成してみました。

広告

ランダムな文字列を生成する

以下のpowershellコマンドで生成可能です。

Add-type -AssemblyName System.Web
[System.Web.Security.Membership]::GeneratePassword(16,5)

コマンドの説明

Add-type -AssemblyName System.Web

[GeneratePassword] メソッドを利用するためにアセンブリをロードします。

アセンブリとはコンパイル済みのコード群のことで、今起動しているpowershellセッションで [Add-type -AssemblyName] で指定したアセンブリを利用することができます。

[System.Web.Security.Membership]::GeneratePassword(16,5)

[Membership] クラスから [GeneratePassword] メソッドを利用することでパスワードを生成します。

[GeneratePassword]の第一引数は、生成する文字列の長さを指定します。
1~128の間で指定可能です。

第二引数は、生成する文字列に含まれる記号の最小数を指定します。
記号とは「!#$%^&()@*_」などの英数字以外の文字列が利用されます。

実行結果

以下のようにパスワードを生成できます。

PS C:\> Add-type -AssemblyName System.Web
PS C:\> [System.Web.Security.Membership]::GeneratePassword(16,5)
SzSQcp2sk{^#9?$3

コメント

タイトルとURLをコピーしました