我在將 NIC(在資源組 A 中)附加到屬于不同資源組(例如 B)中的 Vnet 和 NSG 的子網時遇到了一些問題。我在資源組 A 中有貢獻者角色,但在資源組 B 中只有讀者角色。這可能嗎?如果是這樣,我做錯了什么?這是它的樣子(縮短了 UID)。
% az network nic create --resource-group A --name bastion-nic --vnet-name VN-B --subnet SubnetB
(InvalidResourceReference) 資源/subscriptions/40ef-b75f-c05a034bf2ff/resourceGroups/A/providers/Microsoft.Network/virtualNetworks/VN-B/subnets/SubnetB 資源/subscriptions/b75f-c05a034bf2ff/Microsoft.Network/virtualNetworks/SubnetB 參考未找到網路/網路介面/堡壘網卡。請確保參考的資源存在,并且兩個資源在同一地區。代碼:InvalidResourceReference
uj5u.com熱心網友回復:
我在我的環境中測驗了相同的場景。
場景:我創建了一個 user ,2 個資源組,即用戶contributorTest具有Contributor訪問權限,用戶readerTest具有Reader訪問權限。
如果我使用您正在使用的命令,那么它會給我與您相同的錯誤訊息。為了描述您使用時的問題vnet-name,該命令認為 vnet 也存在于命令中提到的同一資源中。
az network nic create --resource-group contributorTest --name bastion-nic --vnet-name ansumantest-vnet --subnet default
因此,例如在上面的命令中,資源組是貢獻者測驗,我們剛剛提供了 vnet 名稱和子網名稱,它認為它們存在于同一組中。所以它拋出如下錯誤:

作為解決方案,如果 VNet 位于不同的資源組中,您可以使用以下命令創建 NIC:
az network nic create --resource-group contributorTest --name bastion-nic --subnet /subscriptions/subID/resourceGroups/readerTest/providers/Microsoft.Network/virtualNetworks/ansumantest-vnet/subnets/default
在上面的命令中,我們沒有提供 vnet 名稱和子網名稱,作為替代,我們提供了子網的resourceID。
注意:只有當您對兩個資源組都有貢獻者訪問權限時,上述解決方案才有效,在您的情況下,您將收到以下錯誤:

在這里描述這個問題,當您創建 NIC 時,它需要將該 NIC 加入您指定的子網,但由于您僅對 VNET 資源組具有讀者訪問權限,因此不允許您加入 NIC 和子網。
所以,最終解決方案可以是:
- 要么將 VNET 和子網放在您要在其上創建 NIC 的同一資源組中,并對其擁有 Contributor 訪問權限,然后使用您正在使用的命令。
- 向用戶授予第二個資源組的貢獻者訪問權限,并使用我提到的第二個命令作為解決方案。
為兩個資源組提供參與者訪問權限后,第二個命令的輸出:

轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/348972.html
