Powershell ile Kullanıcı Bilgileri Nasıl Şifrelenir?

Resul Coskun 3 Eylül 2022 21:28

Powershell otomasyonlarımızda doğrudan kullanıcı şifreleri yazılması diğer sunucu kullanıcıları tarafından görülebileceğinden güvenli değildir. Bu nedenle script içeriğine yazılan şifrelerin encrypt edilmesi önemli.

powershell parola sifrelemek
Kullanıcı bilgilerini şifrelemek

Kullanıcı Bilgileri Nasıl Şifrelenir ?

Kullanıcı bilgilerini şifrelemek için Get-Credential komutu ile PSCredential objesi oluşturup çıktıyı bir değişkene atıyoruz.

$MyCredential = Get-Credential

$MyCredential değişkenini ekrana yazdırdığınızda kullanıcı adını görebiliyorken şifre bilgisi “SecureString” tipinde saklandığı için ekranda “System.Security.SecureString” uyarısı görünecektir.

Powershell Get Credential
Kullanıcı Bilgileri Nasıl Şifrelenir?

Kullanıcı bilgilerini bir değişkene atadık. Şimdi bu bilgileri Export-CliXml komutu ile export edelim.

$MyCredential | Export-CliXml -Path 'C:\credential.cred'

“-path” komutundan sonra tırnak içerisinde bilgilerin export edileceği dosya yolunu belirtmeniz gerekmektedir.

Kullanıcı bilgilerini export ettğimize göre şimdi bu bilgileri powershell scriptlerinde nasıl kullanabileceğimizi görelim.

Öncelikle “Import-Clixml” komutu ile cred dosyamızı import edip bir değişkene atıyoruz.

$getcredential  = Import-Clixml -Path 'C:\credential.cred'

Cred dosyamızı import ettikten sonra aşağıdaki şekilde kullanıcı ve şifre bilgilerini kullanabilirsiniz.

// Kullanıcı adını $username değişkenine atayalım.
$username = $getcredential.UserName

// Parola bilgisini $password değişkenine atayalım. 
$password = $getcredential.GetNetworkCredential().password 

Örnek kullanımı;

// Şifrelenmiş kullanıcı bilgilerini import edldi.
$getcredential  = Import-Clixml -Path 'C:\credential.cred'

//Şifrelediğimiz kullanıcı bilgilerini $Credential değişkenine atandı.
$Credential = New-Object System.Management.Automation.PSCredential ($credentials.UserName, $credentials.Password)

//Şifrelediğimiz kullanıcı bilgileri ile cmd.exe çalıştırır.
Start-Process cmd.exe -Credential $Credential

Unutmadan, Şifrelediğiniz kullanıcı bilgileri sadece şifreleme yaparken kullandığınız hesabınız ile çözebilirsiniz. Yani resul kullanıcı ile şifrelenen kullanıcı bilgileri farklı bir kullanıcı ile çözülememektedir.

Bir yanıt yazın

Yorumlar (6)