Public/xcrypt/Remove-Credential.ps1
function Remove-Credential { <# .SYNOPSIS Deletes credential from Windows Credential Mandger .DESCRIPTION A longer description of the function, its purpose, common use cases, etc. .NOTES This function is supported on windows only .LINK https://github.com/alainQtec/cliHelper.Core/blob/main/Private/cliHelper.Core.xcrypt/cliHelper.Core.xcrypt.psm1 .EXAMPLE Remove-Credential -Verbose #> [CmdletBinding(SupportsShouldProcess = $true)] param ( # TargetName [Parameter(Mandatory = $true)][ValidateLength(1, 32767)] [ValidateScript({ if (![string]::IsNullOrWhiteSpace($_)) { return $true } throw 'Null or WhiteSpace Inputs are not allowed.' } )][Alias('Title')] [String]$Target, [Parameter(Mandatory = $false)] [ValidateSet('Generic', 'DomainPassword', 'DomainCertificate', 'DomainVisiblePassword', 'GenericCertificate', 'DomainExtended', 'Maximum', 'MaximumEx')] [String]$Type = "GENERIC" ) begin { $CredentialManager = [CredentialManager]::new(); } process { $CredType = [CredType]"$Type" if ($PSCmdlet.ShouldProcess("Removing Credential, target: $Target", '', '')) { $IsRemoved = $CredentialManager.Remove($Target, $CredType); if (!$IsRemoved) { throw 'Remove-Credential Failed. ErrorCode: 0x' + [CredentialManager]::LastErrorCode } } } } |