script/storedcredential/public/Save-StoredCredential.ps1

Function Save-StoredCredential {
    <#
    .DESCRIPTION
        Function to get store and get credentials
#>

    [OutputType([void])]
    Param(
        [Parameter(Mandatory = $True)][PSCredential]$Credential
    )

    <#
    if (!(Test-Credential $Credential)) {
        throw "Credential for $($Credential.UserName) could not be validated."
    }
    #>


    $directory = Get-StoredCredentialDirectory
    New-Item -ItemType Directory -Force -Path $directory | Out-Null

    $domainAndUsername = $Credential.UserName.ToString().Split('\')


    if ($domainAndUsername.Length -eq 2) {
        $domain = $domainAndUsername[0]
        $username = $domainAndUsername[1]
    }
    else {
        $domain = $null
        $username = $domainAndUsername[0]
    }

    if ($domain) {
        $credPath = Join-Path $directory $domain
        New-Item -ItemType Directory -Force -Path $credPath | Out-Null
    }
    else {
        $credPath = $directory
    }

    $Credential | Export-CliXml -Path "$credPath\$username.xml"
}