NetboxPS/Functions/Setup/Set-NetboxCredential.ps1

32 lines
934 B
PowerShell
Raw Normal View History

2020-04-09 09:57:20 -04:00
function Set-NetboxCredential {
[CmdletBinding(DefaultParameterSetName = 'CredsObject',
ConfirmImpact = 'Low',
SupportsShouldProcess = $true)]
2020-04-09 09:57:20 -04:00
[OutputType([pscredential])]
param
(
[Parameter(ParameterSetName = 'CredsObject',
Mandatory = $true)]
2020-04-09 09:57:20 -04:00
[pscredential]$Credential,
2020-04-09 09:57:20 -04:00
[Parameter(ParameterSetName = 'UserPass',
Mandatory = $true)]
2020-04-09 09:57:20 -04:00
[securestring]$Token
)
2020-04-09 09:57:20 -04:00
if ($PSCmdlet.ShouldProcess('Netbox Credentials', 'Set')) {
switch ($PsCmdlet.ParameterSetName) {
'CredsObject' {
$script:NetboxConfig.Credential = $Credential
break
}
2020-04-09 09:57:20 -04:00
'UserPass' {
$script:NetboxConfig.Credential = [System.Management.Automation.PSCredential]::new('notapplicable', $Token)
break
}
}
2020-04-09 09:57:20 -04:00
$script:NetboxConfig.Credential
}
}