Přeskočit na hlavní obsah

Dell Command PowerShell Provider Güvenli Parola özelliği

Shrnutí: Dell Command | PowerShell Provider (DCPP) Güvenli Parola özelliği, ConvertTo-SecureString, ConvertFrom-SecureString

Tento článek se vztahuje na Tento článek se nevztahuje na Tento článek není vázán na žádný konkrétní produkt. V tomto článku nejsou uvedeny všechny verze produktu.

Pokyny

Etkilenen Ürünler:

  • Dell Command | PowerShell Provider

Güvenli parolaların arkasındaki mantık, üretim komut dosyalarında önemli parolaları düz görünüm olarak geçirmememiz gerektiğidir. Bu önemli bir güvenlik eksikliğidir. PowerShell kullanarak bir parolayı güvenli hale getirebilir veya en azından parola görünürlüğünü azaltabiliriz. Öncelikle güvenli dizenin genel yönlerini tartışacağız ve ardından Dell Command PowerShell Provider'ın (DCPP) parolayı güvenli hale getirmek için PowerShell'in entegre özelliğinden nasıl yararlandığını tartışacağız.

Konsol kullanıcılarından kullanıcı adını ve parolayı okumak istediğimizi düşünün. Kullanıcı adının genellikle herhangi bir güvenlik gerektirmediğini ve herkes tarafından görülebileceğini biliyoruz. Ancak parola için yabancıların kullanıcı parolasını bilmesine izin vermemeliyiz. Bu gereksinimi aşağıdaki gibi komutlarla yerine getirebiliriz:

$user = Read-Host "Enter Username"

$pass = Read-Host "Enter Password" -AsSecureString

Yukarıda, parola gibi kritik bilgileri güvence altına almamız gerektiğinde nasıl daha fazla güvenlik ekleyebileceğimize genel bakış sunulmuştur. Yukarıdaki örnekte $pass değişkeni şu tiptedir: System.Security.SecureString. DCPP'nin özelliklerine değinmeden önce PowerShell'in güvenli alanları sağlamak için yaygın olarak kullanılan diğer iki cmdlet ile giriş yapıyoruz.

Bu iki komut şunlardır: ConvertTo-SecureString ve ConvertFrom-SecureString. ConvertTo-SecureString düz metni şuna dönüştürür: System.Security.SecureString. Aşağıda bir örnek gösterilmiştir:

"P@ssword1" | ConvertTo-SecureString -AsPlainText -Force

Yukarıdaki örnekte, düz metin P@assword1 şuna dönüştürülür: System.Security.SecureString. Bu daha teknik bir bilgidir ve yaygın olarak kullanılmayabilir.

Bir sonraki cmdlet ConvertFrom-SecureString güvenli dizeleri şifrelenmiş standart dizelere dönüştürmek için kullanılan daha yaygın bir cmdlet'tir. Burada ConvertTo-SecureString ile ilgili ana sınırlama, çıktısının ileride kullanılmak üzere doğrudan bir dosyaya yazılamamasıdır. Bunun için ConvertFrom-SecureString kullanarak System.Security.SecureString değerini, bu sınırlamanın üstesinden gelmek için bir dosyaya rahatça kaydedilebilen şifrelenmiş standart dizeye dönüştürür.

Şu anda P@ssword1 düz metnini dizeyi güvence altına almak ve çıktısını ConvertFrom-SecureString türüne dönüştürerek güvenli ve rahat bir şekilde dosyaya kaydedilebilen şifreli bir dize elde ediyoruz.

Örnek olarak, bir bilgisayarda yönetici parolası belirlendi ve bunu bir dosyaya kaydetmemiz gerekiyor. Bunu şu şekilde yapabiliriz:

Read-Host "Enter Admin Password" -AsSecureString |
ConvertFrom-SecureString | Out-File "C:\Scripts\AdminPassword.txt"

Bu yönetici parolasını güvenli bir nesne olarak bir değişkene geri alabiliriz:

$pass = Get-Content "C:\Scripts\AdminPassword.txt" | ConvertTo-SecureString

Şimdi DCPP için güvenli bir paroladan nasıl yararlanılacağını ele alalım. DCPP'de, kullanıcının bilgisayarında Sistem veya Yönetici parolası ayarlanmışsa o zaman tüm set komutları için ilgili şifreyi geçmemiz gerekir. Dolayısıyla, bu parolayı düz metin olarak vermek güvenliği ihlal eder. Parolayı şu şekilde iletmeliyiz: System.Security.SecureString. Ayrıca, bir SecureString parolası ilettiğimizde bunu -PasswordSecure anahtarı ile iletmemiz gerekir, normal –Password anahtarı ile değil. Aşağıda kullanıcının AdvancedBatteryChargeCfg öğesini Disabled olarak ayarlamaya çalıştığı ve SecureString parolasını ilettiği bir örnek gösterilmektedir:

Set-item AdvancedBatteryChargeCfg disabled –PasswordSecure $pass

Burada $pass sistem ve yönetici parolasını tutar ve şu tiptedir: System.Security.SecureString. Yukarıdaki tartışmaya benzer şekilde $pass öğesini şu şekilde okuyabiliriz:

$pass = Read-Host "Enter system/admin password" –AsSecureString

Ardından $pass öğesini bir dosyaya şu şekilde kaydedebiliriz:

$pass| ConvertFrom-SecureString | Out-File "C:\Scripts\AdminPassword.txt

Další informace

Dotčené produkty

Dell Command | Powershell Provider
Vlastnosti článku
Číslo článku: 000146459
Typ článku: How To
Poslední úprava: 18 čvc 2024
Verze:  8
Najděte odpovědi na své otázky od ostatních uživatelů společnosti Dell
Služby podpory
Zkontrolujte, zda se na vaše zařízení vztahují služby podpory.