Add new functions for credential handling, node lookup, and context-aware parameter overrides; update module version to 1.2.0
This commit is contained in:
@@ -12,7 +12,11 @@ function Resolve-ConfigurationDataSecretReference {
|
||||
|
||||
[Parameter(Mandatory=$false)]
|
||||
[hashtable]
|
||||
$ProviderSettings = @{}
|
||||
$ProviderSettings = @{},
|
||||
|
||||
[Parameter(Mandatory=$false)]
|
||||
[AllowNull()]
|
||||
$Context = $null
|
||||
)
|
||||
|
||||
$Provider = [string](Get-ConfigurationDataMapValue -Map $Reference -Key "Provider")
|
||||
@@ -31,5 +35,20 @@ function Resolve-ConfigurationDataSecretReference {
|
||||
$CurrentProviderSettings = $ProviderSettings[$ProviderDefinition.Name]
|
||||
}
|
||||
|
||||
return & $ProviderDefinition.Resolver -Reference $Reference -ExpectedType $ExpectedType -ProviderSettings $CurrentProviderSettings
|
||||
$SecretValue = & $ProviderDefinition.Resolver -Reference $Reference -ExpectedType $ExpectedType -ProviderSettings $CurrentProviderSettings
|
||||
|
||||
if($ExpectedType.ToLowerInvariant() -eq "credential" -and (Test-ConfigurationDataMapContainsKey -Map $Reference -Key "Domain")){
|
||||
if(-not ($SecretValue -is [System.Management.Automation.PSCredential])){
|
||||
throw "Secret reference [$($Reference.Name)] defines [Domain], but the resolved value is not a PSCredential."
|
||||
}
|
||||
|
||||
$Domain = Get-ConfigurationDataMapValue -Map $Reference -Key "Domain"
|
||||
if($null -ne $Context){
|
||||
$Domain = Resolve-ConfigurationDataValue -Value $Domain -Context $Context
|
||||
}
|
||||
|
||||
$SecretValue = ConvertTo-ConfigurationDataDomainCredential -Credential $SecretValue -Domain ([string]$Domain)
|
||||
}
|
||||
|
||||
return $SecretValue
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user