Read-DellBIOSPassword.ps1
Function Read-DellBIOSPassword { <# .Synopsis Reads a Dell BIOS Password from secure string storage .Description Reads a Dell BIOS Password from secure string storage. .Notes Reads System.Security.SecureString from the default user path. .Example Read-DellBIOSPassword .Example Read-DellBIOSPassword [[-FilePath] <String>] [[-Key] <String>] [<CommonParameters>] .Example $SecureStringPwd = read-DellBIOSPassword #> [CmdletBinding()] Param ( [Parameter(Mandatory=$false,ValueFromPipelineByPropertyName=$true,ValueFromPipeline=$true, position=0, HelpMessage="Path to Password File")] [string] $FilePath, [Parameter(Mandatory=$false,ValueFromPipelineByPropertyName=$true,ValueFromPipeline=$false, position=1, HelpMessage="Encryption Key")] [byte []] $Key ) PROCESS { if ([string]::IsNullOrEmpty($FilePath)) { $FilePath = (Get-DellBIOSPasswordPath).DellBIOSPwdFilePath } [xml]$xml=Get-Content $FilePath if ($xml.Credential.Encryption -eq "PlainText") { $password=ConvertTo-SecureString -AsPlainText -String $xml.Credential.Password -Force } elseif ($xml.Credential.Encryption -eq "DPAPI") { $password=ConvertTo-SecureString -String $xml.Credential.Password } elseif ($xml.Credential.Encryption -eq "Rijndael") { # [byte[]]$KeyBytes = [System.Text.Encoding]::ASCII.GetBytes($Key) # $password=ConvertTo-SecureString -Key $KeyBytes -String $xml.Credential.Password $password=ConvertTo-SecureString -Key $Key -String $xml.Credential.Password } $password }#EndProcess }#end Function # SIG # Begin signature block # MIIVSQYJKoZIhvcNAQcCoIIVOjCCFTYCAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDZkPHzbzNUCBxH # 07osa1b3Bm9CKX/d/540FJtvCEI4MaCCCiMwggTCMIIDqqADAgECAhANhLMrA8kb # dRADSKysMihfMA0GCSqGSIb3DQEBCwUAMH8xCzAJBgNVBAYTAlVTMR0wGwYDVQQK # ExRTeW1hbnRlYyBDb3Jwb3JhdGlvbjEfMB0GA1UECxMWU3ltYW50ZWMgVHJ1c3Qg # TmV0d29yazEwMC4GA1UEAxMnU3ltYW50ZWMgQ2xhc3MgMyBTSEEyNTYgQ29kZSBT # aWduaW5nIENBMB4XDTE2MDEyMDAwMDAwMFoXDTE5MDIxODIzNTk1OVowWjELMAkG # A1UEBhMCVVMxDjAMBgNVBAgTBVRleGFzMRMwEQYDVQQHEwpSb3VuZCBSb2NrMRIw # EAYDVQQKFAlEZWxsIEluYy4xEjAQBgNVBAMUCURlbGwgSW5jLjCCASIwDQYJKoZI # hvcNAQEBBQADggEPADCCAQoCggEBAIiB7p20xoJ8RMmDhIKNR/g0X6OhJWWiaLL6 # OY8sCfY9B8BhCOKzCgNQU+g5Jdu5GZ+J7G8S7evlJfhskLH4fhkGYjn4a1sPw/mD # m/qMaE4n9WLaRourdOIIWgYftCGmjrlpTq7d4rYZ+Oo+iaQTR1OIrnJ7UbV6YYKp # /buZ3pcrWAB7ox3UDeH/UigGP+QIix5mQrRmQLgZyJkg5V9EB/m2HYmQ+w13VNIf # adxPklaF1sNMJTRwzKzqZru4N7goue63NAu8COhQ9+c8MIom+VjDVuDR01UY25vQ # IVJ8Sbk3ORD20Eb6a7ZxVb29Lkn6/cOccCf6tuAe7sd9skZAbJsCAwEAAaOCAV0w # ggFZMAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgeAMCsGA1UdHwQkMCIwIKAeoByG # Gmh0dHA6Ly9zdi5zeW1jYi5jb20vc3YuY3JsMGEGA1UdIARaMFgwVgYGZ4EMAQQB # MEwwIwYIKwYBBQUHAgEWF2h0dHBzOi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUF # BwICMBkMF2h0dHBzOi8vZC5zeW1jYi5jb20vcnBhMBMGA1UdJQQMMAoGCCsGAQUF # BwMDMFcGCCsGAQUFBwEBBEswSTAfBggrBgEFBQcwAYYTaHR0cDovL3N2LnN5bWNk # LmNvbTAmBggrBgEFBQcwAoYaaHR0cDovL3N2LnN5bWNiLmNvbS9zdi5jcnQwHwYD # VR0jBBgwFoAUljtT8Hkzl699g+8uK8zKt4YecmYwHQYDVR0OBBYEFIb5/xrKh87H # XzS6cRL1o7LqbfaDMA0GCSqGSIb3DQEBCwUAA4IBAQCFWAnqZghMKytZjfSKt94F # eB/VfyFl+3tWhPN8SFkXUdIDljd3t5dggtIYAc7TPKfOr8JngIRQmM0lOyj/bzOM # Chdb8nEbKV4R6krbF423gSVFcYoZsiCoqV2An5OrnnRDPPmgWs5wJvgwk/iGeEYE # /DQE8J0hWVr4tTQVKRaCBM4DVfK4Z2Mp5BAewp9jxvDS/cuguTQdQP+mtYxmkkXU # SyTq+olOm8YVPAw0tpRGbZjPdxK2++EIeVrTL7jscqhuMx8d985A4corhmQdZ7Un # qTurFTSdgqxqZeJiYVFqhp1c9wbCwFuCSTyJiissW+BC4lt+N2oFOSieit7gnmP8 # MIIFWTCCBEGgAwIBAgIQPXjX+XZJYLJhffTwHsqGKjANBgkqhkiG9w0BAQsFADCB # yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL # ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJp # U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxW # ZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0 # aG9yaXR5IC0gRzUwHhcNMTMxMjEwMDAwMDAwWhcNMjMxMjA5MjM1OTU5WjB/MQsw # CQYDVQQGEwJVUzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNV # BAsTFlN5bWFudGVjIFRydXN0IE5ldHdvcmsxMDAuBgNVBAMTJ1N5bWFudGVjIENs # YXNzIDMgU0hBMjU2IENvZGUgU2lnbmluZyBDQTCCASIwDQYJKoZIhvcNAQEBBQAD # ggEPADCCAQoCggEBAJeDHgAWryyx0gjE12iTUWAecfbiR7TbWE0jYmq0v1obUfej # DRh3aLvYNqsvIVDanvPnXydOC8KXyAlwk6naXA1OpA2RoLTsFM6RclQuzqPbROlS # Gz9BPMpK5KrA6DmrU8wh0MzPf5vmwsxYaoIV7j02zxzFlwckjvF7vjEtPW7ctZlC # n0thlV8ccO4XfduL5WGJeMdoG68ReBqYrsRVR1PZszLWoQ5GQMWXkorRU6eZW4U1 # V9Pqk2JhIArHMHckEU1ig7a6e2iCMe5lyt/51Y2yNdyMK29qclxghJzyDJRewFZS # AEjM0/ilfd4v1xPkOKiE1Ua4E4bCG53qWjjdm9sCAwEAAaOCAYMwggF/MC8GCCsG # AQUFBwEBBCMwITAfBggrBgEFBQcwAYYTaHR0cDovL3MyLnN5bWNiLmNvbTASBgNV # HRMBAf8ECDAGAQH/AgEAMGwGA1UdIARlMGMwYQYLYIZIAYb4RQEHFwMwUjAmBggr # BgEFBQcCARYaaHR0cDovL3d3dy5zeW1hdXRoLmNvbS9jcHMwKAYIKwYBBQUHAgIw # HBoaaHR0cDovL3d3dy5zeW1hdXRoLmNvbS9ycGEwMAYDVR0fBCkwJzAloCOgIYYf # aHR0cDovL3MxLnN5bWNiLmNvbS9wY2EzLWc1LmNybDAdBgNVHSUEFjAUBggrBgEF # BQcDAgYIKwYBBQUHAwMwDgYDVR0PAQH/BAQDAgEGMCkGA1UdEQQiMCCkHjAcMRow # GAYDVQQDExFTeW1hbnRlY1BLSS0xLTU2NzAdBgNVHQ4EFgQUljtT8Hkzl699g+8u # K8zKt4YecmYwHwYDVR0jBBgwFoAUf9Nlp8Ld7LvwMAnzQzn6Aq8zMTMwDQYJKoZI # hvcNAQELBQADggEBABOFGh5pqTf3oL2kr34dYVP+nYxeDKZ1HngXI9397BoDVTn7 # cZXHZVqnjjDSRFph23Bv2iEFwi5zuknx0ZP+XcnNXgPgiZ4/dB7X9ziLqdbPuzUv # M1ioklbRyE07guZ5hBb8KLCxR/Mdoj7uh9mmf6RWpT+thC4p3ny8qKqjPQQB6rqT # og5QIikXTIfkOhFf1qQliZsFay+0yQFMJ3sLrBkFIqBgFT/ayftNTI/7cmd3/SeU # x7o1DohJ/o39KK9KEr0Ns5cF3kQMFfo2KwPcwVAB8aERXRTl4r0nS1S+K4ReD6bD # dAUK75fDiSKxH3fzvc1D1PFMqT+1i4SvZPLQFCExggp8MIIKeAIBATCBkzB/MQsw # CQYDVQQGEwJVUzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNV # BAsTFlN5bWFudGVjIFRydXN0IE5ldHdvcmsxMDAuBgNVBAMTJ1N5bWFudGVjIENs # YXNzIDMgU0hBMjU2IENvZGUgU2lnbmluZyBDQQIQDYSzKwPJG3UQA0isrDIoXzAN # BglghkgBZQMEAgEFAKCBrDAZBgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAcBgor # BgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIBFTAvBgkqhkiG9w0BCQQxIgQgmy0M79Zk # u4yiQBHTDcasuNEg0fdKxFJ6m40beT2b9FgwQAYKKwYBBAGCNwIBDDEyMDCgFoAU # AEQAZQBsAGwALAAgAEkAbgBjAC6hFoAUaHR0cDovL3d3dy5kZWxsLmNvbSAwDQYJ # KoZIhvcNAQEBBQAEggEAW9orPw3wXbG739Jx62iXgH5OzDDSihJJ4zn/NwoIyq5G # 0LMdzOvjnExEAXXrmVTsavBmL9RKSY0lMHe+4aIDUzXs+RFA8J5BHY6GztggXzZW # oGrfeDZh9Mwr261Heqtdnojndut7T0J2i+Brr1a0+AhTjNN2VBOZER6qXV0LNTvz # JjvZTrnqCR4+BVstJEZqABYS4rmNkZyZJgx9KTHZuaOZXphILmC9FfiGmUP5qKeR # Smrs5pEdEGlSB6g+q+icU2phTPNgs+5wXjM9Snq7RDW22QlNWcX8OHWGUDbRH5PM # 4j/ccktltMnkN7O4yXICwN2Hl+ZKAO/zNiA7zia5xaGCCAowgggGBgorBgEEAYI3 # AwMBMYIH9jCCB/IGCSqGSIb3DQEHAqCCB+MwggffAgEDMQ8wDQYJYIZIAWUDBAIB # BQAwbQYLKoZIhvcNAQkQAQSgXgRcMFoCAQEGCmCGSAGG/W4BBxgwMTANBglghkgB # ZQMEAgEFAAQgpg44AeDRZJecxaQT+M+Iew8y7fKKEZmm9iYiEnnW+o8CBQLg8YUF # GA8yMDE2MDcyMDA3MjUxMVqgggTxMIIE7TCCA9WgAwIBAgIIYsc5ZcZm0c0wDQYJ # KoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMw # EQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQgVGVjaG5vbG9n # aWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZpY2F0ZSBB # dXRob3JpdHkgLSBHMjAeFw0xNjAyMTYwNzAwMDBaFw0yMTAyMTYwNzAwMDBaMIGI # MQswCQYDVQQGEwJVUzEQMA4GA1UECBMHQXJpem9uYTETMBEGA1UEBxMKU2NvdHRz # ZGFsZTElMCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjErMCkG # A1UEAxMiU3RhcmZpZWxkIFRpbWVzdGFtcCBBdXRob3JpdHkgLSBHMjCCASIwDQYJ # KoZIhvcNAQEBBQADggEPADCCAQoCggEBAK5uCXqrt1YW3ufAO3avsGAjHvKah1a+ # ElUYBeL3yT/3Gzj8F0FY1lsbsZ+P3Eswsr27/IHNI7tgjndMrD0KOwk/MwS36Q2n # 7EaXsVGpDaI7OkaUkgizEgYAlxYA0wpB+azNJd9S/WZOQzh+itAwkZJb/BWDFD5R # JKHrO+LX/TZF4ZSbTlLY9hmCG6ou/LDj0WGVSYOCwHZHu6l727QXpHlPqKE79Z5O # mzOvMUsV17RwpDadtM5LVW5wOjtd7YC2VVmPklPnwo9082ZvARkWBm80n2jVa9+E # 5ODZeagbFwR0cZj8OGv2BVT1rPCKHnFCWhBcUj0a0ue5QdO81+DAHJsCAwEAAaOC # AVAwggFMMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgbAMBYGA1UdJQEB/wQM # MAoGCCsGAQUFBwMIMB0GA1UdDgQWBBSl96bNi8zQ5sIrdE4SVC9WFl8E2jAfBgNV # HSMEGDAWgBR8DDIfp9kwf8R9aKNiqKHOqwdbJzA6BggrBgEFBQcBAQQuMCwwKgYI # KwYBBQUHMAGGHmh0dHA6Ly9vY3NwLnN0YXJmaWVsZHRlY2guY29tLzBGBgNVHR8E # PzA9MDugOaA3hjVodHRwOi8vY3JsLnN0YXJmaWVsZHRlY2guY29tL3JlcG9zaXRv # cnkvc2Zyb290LWcyLmNybDBQBgNVHSAESTBHMEUGC2CGSAGG/W4BBxcCMDYwNAYI # KwYBBQUHAgEWKGh0dHA6Ly9jcmwuc3RhcmZpZWxkdGVjaC5jb20vcmVwb3NpdG9y # eS8wDQYJKoZIhvcNAQELBQADggEBACfBgtWM3cYqDYWyJXmY6s4frHZ5HGowSdjq # St/PM1Cm9vEOwBX8GZGjKduaHnKZIuuIX1299beWgR1lylGaplfiDth4unt9IFwR # yZaN8yG0DmsNHqzyvuWbTF3TQkwyYkxJN2UESVKk2h0a/bwAIuU+OrAxfupmfum3 # +0GJeVOKRhINyt55gcOm/2RgLuBlnZCV9f/kdh/Ko6lGlp6qANq1d8jeFr0HVEvx # dFzMfiA6m90jBlNik9/DrWv8ZVEgHjNz7m2iDnONMLE6yIjj3PUCq5Veq9XjrDE9 # FLsAcbOi09qlA2LDmGT7gKl/u4G5893M6gzlI1bn5cJFwTvqoZAxggJjMIICXwIB # ATCBnDCBjzELMAkGA1UEBhMCVVMxEDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcT # ClNjb3R0c2RhbGUxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIElu # Yy4xMjAwBgNVBAMTKVN0YXJmaWVsZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0 # eSAtIEcyAghixzllxmbRzTANBglghkgBZQMEAgEFAKCBmDAaBgkqhkiG9w0BCQMx # DQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTE2MDcyMDA3MjUxMVowKwYL # KoZIhvcNAQkQAgwxHDAaMBgwFgQUjVF/yZ87I87DazsMs7flGs00S84wLwYJKoZI # hvcNAQkEMSIEIMN7eRdVpAZZ6WTYWXGz7zuKw4/Gs/xod+dntlNjt5jjMA0GCSqG # SIb3DQEBAQUABIIBABxXFGuNm03ud0YpsIdoK0B3VRbwl/rWiiquvircQAgmcJXv # vCSk3CxA2cLIZEWevyMGIzmsu/tH9g3ASgUR5dz23ZshsHHgq59QAXq8fY8HemKG # 2/NDMlwa0D2PMhLS8oED7Erh8Onaqs8I52JPbjrpI7gzd73WIunCr35d7DPmpMZm # T9ylVLQhPVbGXvongM98akmL5Xhwd78MYxR29e8lvlVZCqjdxuuZHlwl8gRWdPET # rdxaX5p0MpxxT5aNhclwvoCedfGN8uSJDLtxcmn2we7jGlq5+OiZWhOjtz1wribU # KVZROQgcJAa2xIRs1W3kax1xLtqQqA3drUUpADQ= # SIG # End signature block |