gpt4 book ai didi

azure - 如何在 powershell 中规范化此 URL?

转载 作者:行者123 更新时间:2023-12-02 23:35:55 25 4
gpt4 key购买 nike

我有以下 Azure Key Vault 资源代码:

$tempkeyid = (Get-AzKeyVaultKey -VaultName $vaultname -Name $tempkeyname).Id
$tempkeyid = $tempkeyid.Substring(0, $tempkeyid.LastIndexOf('/'))
$tempkeyid
New-AzSynapseWorkspaceKey -ResourceGroupName $resourcegroup -WorkspaceName $workspacename -Name $tempkeyname -EncryptionKeyIdentifier $tempkeyid

第 2 行之所以存在,是因为 key 保管库返回版本化标识符,但第 4 行需要无版本标识符

第 3 行 $tempkeyid 的值为:

https://keyvaultname.vault.azure.net:443/keys/keyname

我收到错误:

New-AzSynapseWorkspaceKey: Key Vault URL should be a normalized URL

我尝试使用下面的代码对 URL 进行编码和解码,但编码尝试出现相同的错误,解码尝试出现错误,提示“无效 URI:无法确定 URI 的格式”。我不确定如何将其标准化,或者具体哪些内容未标准化。 $tempkeyid 的值对我来说看起来是正确的。

$tempkeyid = [System.Web.HttpUtility]::UrlEncode($tempkeyid) 
$tempkeyid = [System.Web.HttpUtility]::UrlDecode($tempkeyid)

最佳答案

编码与 URI 规范化不同,URI 规范化是指以标准格式表达 uri。 (参见wikipedia entry)。就您而言,我猜它不喜欢使用默认端口(:443)。要系统地获取规范化的 uri,请尝试如下操作:

$tempkeyiduri = [System.Uri]($tempkeyid)
$tempkeyid = $tempkeyiduri.AbsoluteUri

关于azure - 如何在 powershell 中规范化此 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72021389/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com