我正在使用Microsoft.Azure.keyVault
嘗試從Azure中的密鑰庫中獲取密鑰。嘗試從Azure密鑰獲取祕密時遇到Unathorized Vault
我已經註冊了一個作爲Native API和Web API的應用程序。
登錄到AD是成功的(可通過在AuthenticationContext.AcquireTokenAsync
上獲取有效的AccessToken
來確認這一點)。
在Azure AD中,這兩個應用程序在密鑰庫中都有訪問控制(IAM)和訪問策略。我已經證實,重點庫基地址和祕密名字是正確的,但做以下電話
var sec = kv.GetSecretAsync("https://xxxxxxx.vault.azure.net", "xxsecretnamexx").GetAwaiter().GetResult();
我不斷收到錯誤時
{"Operation returned an invalid status code 'Unauthorized'"} Microsoft.Azure.KeyVault.Models.KeyVaultErrorException
一個旁註:試圖通過登錄做到這一點作爲用戶。獲得令牌的代碼如下
.AcquireTokenAsync(resourceUri,clientId, new Uri(redirectUri), new PlatformParameters(PromptBehavior.SelectAccount))
我們已經使用具有權限的密鑰庫中的註冊Azure的AD應用程序的ID和祕密工作的代碼。
試圖在不使用相關注冊的Azure AD應用程序的標識和密碼的情況下執行相同的操作,而是在將訪問令牌獲取到Azure AD時顯示登錄提示。
什麼是'resourceUri'價值? – juunas