Public/Network/Security/Get-NetworkCredential.ps1

function Get-NetworkCredential {
  <#
.SYNOPSIS
    Returns a [System.Net.NetworkCredential] given a passed [PSCredential] parameter
.DESCRIPTION
    Returns a [System.Net.NetworkCredential] given a passed [PSCredential] parameter
.PARAMETER Credential
    A mandatory parameter of type [PSCredential]
.EXAMPLE
    $NetworkCredential = Get-NetworkCredential -Credential $cred
.INPUTS
    'PSCredential'
.OUTPUTS
    'System.Net.NetworkCredential'
.NOTES
    Medium to High impact as this function will return the password, albeit hidden from default view
#>


  [CmdletBinding(ConfirmImpact = 'Medium')]
  [OutputType('System.Net.NetworkCredential')]
  Param
  (
    [Parameter(Mandatory, Position = 0)]
    [PSCredential] $Credential
  )
  #endregion parameter

  begin {
    Write-Invocation $MyInvocation
  }

  process {
    $Credential.GetNetworkCredential()
  }

  end {
    Out-Verbose $fxn "Complete."
  }
}