2016-03-16 46 views
1

現在不推薦使用Switch-AzureMode,是否可以在腳本中驗證一次而不是單獨使用Add-AzureRmAccount和Add-AzureAccount兩種方式進行提示?這適用於使用Service Bus尚未在ARM中提供的腳本,因此它需要Add-AzureAccount,但腳本中的所有其他資源都使用AzureRm cmdlet進行管理。在Azure PowerShell中對ARM和ASM進行一次驗證

回答

0

您可以使用x.509證書爲ARM驗證創建服務主體,並將相同證書配置爲管理證書ASM驗證。這將允許您悄悄地登錄到ASM和ARM。

https://azure.microsoft.com/en-us/documentation/articles/resource-group-authenticate-service-principal/

+0

這仍然有問題,您將需要單獨調用Add-AzureRmAccount和Set-AzureSubscription以登錄,並且Add-AzureRmAccount仍然需要顯式調用每個會話(我沒有使用管理證書很長時間時間!所以不記得那裏的機制) –

+0

操作詞是「默默地」。使用證書可以避免彈出窗口。 –

1

據我所知這是不可能來驗證這兩個ASM和ARM你需要單獨通話雙方登錄。但是,您可以存儲憑據,以免被要求登錄。一旦你有正確的權限設置,你可以擁有相同的一組憑據登錄到兩者。這意味着你可以擁有可以傳遞的同一個pscredential對象。

所以,你最終的東西,如

Add-AzureRmAccount -Credential $credential -TenantId $Tenant 
    Add-AzureAccount -Credential $credential -TenantId $Tenant 

個人而言,我已經開發了一個小模塊,負責記錄中既ASM和ARM。使用該腳本,我有一個Select-Subscription cmdlet,其中包含訂閱名稱並登錄。

在後端腳本下載加密的憑證文件,將其解密並單獨登錄到兩者。這種方式每當有密碼更改時,我創建一個新的加密文件,並傳播到所有活動的腳本。

它需要多一點管理才能開始,並且在安裝新腳本(解密證書和模塊)時需要一些先決條件,但是一旦它們在那裏,它會使生活更快。