PowerCLIで資格情報を保存して、接続時に再利用して安全かつ簡単に接続する方法

PowerCLIではvCenterへ接続してvSphere Management API経由で情報を取得します。初めの接続にはConnect-VIServerコマンドレットを利用しますが、スクリプトに資格情報をハードコードしたり資格情報の要求ウィンドウへ毎回入力したりしている方が多いのではないでしょうか。
PowerCLIでは上記よりもセキュリティ上安全で利便性の高い方法として、Credential Storeが提供されています。

Credential Storeを利用しない場合

以下のようにConnect-VIServerしていると思います。

Connect-VIServer <vCenter Address> –User <User> –Password <Password>
上記で明示的にPasswordを指定しない場合には資格情報の要求ウィンドウが表示されます。パスワードがハードコードされているとコードを共有するのが難しくなり、毎回入力するとなると手間がかかるようになります。

 Credential Storeを利用する場合

初めにNew-VICredentialStoreItemコマンドレットで資格情報を保存します。

New-VICredentialStoreItem -Host <vCenter Address> -User <User> -Password <Password>
上記の手順を1回実行した以降はConnect-VIServerを実行するたびに資格情報を入力する必要がなくなります。つまり今後はvCenterのアドレスだけで接続できるようになります。
Connect-VIServer <vCenter Address>
すでに保存されている資格情報を表示するにはGet-VICredentialStoreItemコマンドレットを利用します。
保存した資格情報を削除するにはRemove-VICredentialStoreItemコマンドレットを利用します。

上記であれば資格情報はPowerCLIで管理されるため、より簡単で安全に接続処理を記述することができます。

コメント

このブログの人気の投稿

CoreOSとVMware vSphereでDocker環境を構築する

PowerShellで潜るOpenStack APIの海 - 素潜り編

ASRock C2750D4I Java 1.8.0 131へ更新後にIPMIのコンソールの起動に失敗する