2015-11-03 51 views
2

我在Azure訂閱中創建了一個KeyVault,並在我的一個Azure AD目錄中創建了一個客戶端應用程序。但是,客戶端應用程序未在訂閱的默認目錄的中註冊。如何授權非默認目錄中的客戶端到KeyVault

當我運行下面的PowerShell命令,它會嘗試查找服務主體在訂閱的默認目錄,並沒有找到它。

PS > Set-AzureKeyVaultAccessPolicy -VaultName <vaultname> 
     -ServicePrincipalName <principal guid> -PermissionsToSecrets Get 

我發現an article描述如何更改默認的目錄在管理門戶網站訂閱,但不知道該怎麼辦了使用PowerShell相同。

的「Select-AzureSubscription」 cmdlet的似乎不支持更改默認的目錄。 'Set-AzureKeyVaultAccessPolicy'也不支持一個參數來指示它應該在哪個目錄中顯示。

回答

4

主要Vault可以只授權應用程序(客戶端)與Azure訂閱相關的目錄登記,唯一的辦法(目前)更改與訂閱相關聯的「家」目錄是通過Azure管理門戶。

+1

這是相當有限的,尤其是在開發情況下,有多個目錄並不少見。你知道有沒有計劃解決這個問題? – MvdD

+1

@MvdD我不知道任何已被廣泛分享的計劃。獲得團隊反饋的最佳方式是使用Azure反饋論壇。有一個項目已經爲此,所以只需投票:https://feedback.azure.com/forums/169401-azure-active-directory/suggestions/10510773-allow-key-vault-creation-in-non- default-directory –

+0

有趣的是,如果您在默認目錄中成功設置訪問權限,然後使用相同的clientID和祕密更改默認目錄加密和解密,並繼續從我的測試中運行。所以,這只是授予對默認目錄必須進行訪問的步驟。 – GregGalloway

0

我會想象這是設計的行爲,並且無法想象如何/爲什麼會改變。

的Azure訂閱連接到它的Azure中的Active Directory,這是它會用反對,每當有人試圖訪問資源認證目錄。

雖然您可以創建信任到其他活動目錄只是建立一個新的AAD不會自動啓用域通過Azure的信任。

密鑰保險庫旨在爲經認證的用戶提供訪問權限,旨在爲這些用戶提供安全數據。由於您創建的多個目錄之間沒有認證機制,Key Vault無法確定這些目錄屬於哪個機制。

重點庫需要通過連接到它在其下運行訂閱的Active Directory來解決服務的原則(這是否是直接通過該目錄中,或通過它信任另一個域)。其他任何東西都會產生額外的攻擊媒介並大大削弱產品。

+1

雖然我理解您的觀點(並且它是有效的),但有很多情況(認爲擁有企業協議的大型公司)將擁有有效的業務案例,以便爲需要單獨訪問Key Vault以獲取LOB應用程序的內部實體。要求單個目錄容納數百個LOB應用程序,這爲EA團隊創造了管理和維護的噩夢。毫無疑問,微軟可以提供一種安全機制,允許來自「關聯」AAD的應用程序對Key Vault進行身份驗證。 – MichaelMilom