Credentialを作成する

はじめに

Credentialを作成するには「Get-Credential」コマンドレットやユーザー名とパスワードを使用しCredentialオブジェクトを作成します。

環境

OS:Windows10
.Net Framework:4.7
PowerShellのバージョン:5.1.17763.1007

Get-Credentialを使用した資格情報の作成

#資格情報の要求画面を表示する
$secure = Get-Credential -Credential "ホスト名\アカウント名"("ドメイン名\アカウント名"も可)

#credentialオブジェクトを作成する
$credential = New-Object System.Management.Automation.PSCredential($secure.UserName,$secure.Password)

暗号化したパスワードファイルを使用した資格情報の作成

パスワードを暗号化してファイルに保存

#クリアテキストをSecureStringオブジェクトに変換する
$secure = ConvertTo-SecureString -string "password" -AsPlainText -Force

#SecureStringオブジェクトを暗号化された標準文字列に変換する
$encrypt = ConvertFrom-SecureString -SecureString $secure

#暗号化された標準文字列をテキストファイルに書き出す
$encrypt > c:\temp\encrypted.txt

パスワードを復号化して資格情報を作成

#暗号化された標準文字列を取得する
$encrypt = Get-Content c:\temp\encrypted.txt

#暗号化された標準文字列をSecureStringオブジェクトに変換する
$secure = ConvertTo-SecureString $encrypt

#Credentialオブジェクトを作成する
$credential = New-Object System.Management.Automation.PSCredential("ホスト名/アカウント名",$secure)

使用例

Credentialは、ワークグループのサーバなど専用アカウントで認証させる場合に使用します。

ワークグループのサーバを再起動する

PS C:\> Restart-Computer windows2016 -Credential $Credential

ワークグループのサーバでサービス一覧を取得する

#セッションの取得
$PSSession = New-PSSession windows2019 -Credential $credential

#コマンドの投入
Invoke-Command -Session $PSSession -ScriptBlock {get-service}
タイトルとURLをコピーしました