System.Web.Security.MembershipクラスのGeneratePasswordメソッドを利用する。利用する前には、あらかじめAdd-TypeコマンドレットでSystem.Web名前空間を現在のセッションに追加しておく。第一引数は戻り値の文字列の長さ。第二引数は戻り値の文字列に含める英数字以外の文字(@や#など)の最小数。そのため、第二引数に0を指定しても英数字以外の文字が0個(最小)の場合もあれば得られた文字列すべてがそうなる可能性もある。第一引数と同じ値を指定すれば、すべての文字が英数字以外となる。
PS > Add-Type -AssemblyName System.Web PS > [System.Web.Security.Membership]::GeneratePassword(10, 0) 6*T/UJG/%^ PS > [System.Web.Security.Membership]::GeneratePassword(10, 0) 7z:0Hida{J PS > [System.Web.Security.Membership]::GeneratePassword(10, 5) 8Vi@IQ-!^^ PS > [System.Web.Security.Membership]::GeneratePassword(10, 10) $;{+($|{/#