ps/Modules/Cole.PowerShell.Developer/Public/Get-BasicAuthWebHeader.ps1
2023-05-30 22:51:22 -07:00

22 lines
793 B
PowerShell

function Get-BasicAuthWebHeader {
[CmdletBinding()]
[OutputType([object])]
param(
[Parameter(Mandatory = $true, ParameterSetName = "UsernameAndPassword")]
[string]$Username,
[Parameter(Mandatory = $true, ParameterSetName = "UsernameAndPassword")]
[Alias('Password')]
[string]$InputObject,
[Parameter(Mandatory = $true, ParameterSetName = "Credential")]
[System.Management.Automation.PSCredential]$Credential
)
if ($PSCmdlet.ParameterSetName -eq "Credential") {
$InputObject = Get-PasswordFromCredential -Credential $Credential
$Username = $Credential.Username
}
$base64String = (ConvertTo-Base64 -Input "$($Username):$($InputObject)")
return @{ Authorization = "Basic $base64String" }
}