AL-Go/New-ALGoAuthContext.ps1
<#
.Synopsis Function for creating a mew AL-Go for GitHub compatible json representation of an AUTHCONTEXT .Description For many scenarios in AL-Go for GitHub, a AUTHCONTEXT secret is needed. This function converts a authContext hashtable obtained by New-BcAuthContext to a json string with the needed properties. .Parameter authContext Authorization Context obtained by New-BcAuthContext. .Example $authContext = New-BcAuthContext -includeDeviceLogin New-ALGoAuthContext -authContext $authContext | Set-Clipboard #> function New-ALGoAuthContext { Param( [Parameter(Mandatory=$true, ValueFromPipeline)] [Alias('bcAuthContext')] [HashTable] $authContext ) $authContext = Renew-BcAuthContext $authContext if ($authContext.clientSecret) { $ht = @{ "TenantID" = $authContext.TenantID "ClientID" = $authContext.ClientID "ClientSecret" = $authContext.ClientSecret | Get-PlainText "Scopes" = $authContext.Scopes } } else { $ht = @{ "TenantID" = $authContext.TenantID "RefreshToken" = $authContext.RefreshToken "Scopes" = $authContext.Scopes } } $ht | ConvertTo-Json -Depth 99 -Compress } Set-Alias -Name Get-ALGoAuthContext -Value New-ALGoAuthContext Export-ModuleMember -Function New-ALGoAuthContext -Alias Get-ALGoAuthContext |