運用を自動化するためにPowerShellスクリプトを作成する場合があると思います。
例えば、AzureやOffice 365の自動化の場合、ログイン処理も自動化が必要になります。
ログインの自動化にはユーザー名とパスワードが必要ですが、パスワードをスクリプト内に書いたり、平文のパスワードファイルを用意するのはセキュリティ的に好ましくありません。
そのため、暗号化したパスワードをファイルに保存し、PowerShellスクリプト内でパスワードファイル使用するのが望ましいです。
今回は、暗号化したパスワードファイルの作成方法と、そのパスワードファイルを利用したログインの自動化を紹介します。
1.暗号化したパスワードファイルの作成方法
最初にPowerShellスクリプトで使用するパスワードファイルを作成します。
下記のコマンドで入力したパスワードを暗号化した文字列としてファイルに出力することが可能です。
ファイル名とパスは任意の値を指定してください。
$Cred = Get-Credential
$Cred.Password | ConvertFrom-SecureString | Set-Content C:\Password.pass
2.パスワードファイルの使用方法
次に作成したパスワードファイルを使用する方法です。
下記のコマンドで、暗号化したパスワードファイルを読み込み、復号化したパスワードを利用することが可能です。
ファイル名は先程作成したファイルを指定してください。
$Password = Get-Content C:¥Password.pass | ConvertTo-SecureString
「ConvertTo-SecureString」を実行しないと下記のエラーが表示されます。
New-Object : “PSCredential” のオーバーロードで、引数の数が “2” であるものが見つかりません。
上記のコマンドをPowerShellスクリプト内で利用することで、ログインの自動化を実現することが可能です。
コメント