簡體   English   中英

https://management.azure.com/tenants api using asp.net core and c# code return The remote server returned an error: (401) Unauthorized

[英]https://management.azure.com/tenants api using asp.net core and c# code return The remote server returned an error: (401) Unauthorized

I want to call https://management.azure.com/tenants?api-version=2020-01-01 api to call to get tenant list in my project, using asp.net and c#, but not able to get valid link. 如果可能的話,分享這個樣本。

我知道如何調用 api,問題是我沒有得到正確的響應,我參考下面的鏈接來調用 api,但是在調用組織 api 后得到異常'遠程服務器返回'未授權'錯誤:

我已經使用 GetAccessToken() 方法獲取了 Token

https://msftstack.wordpress.com/2016/01/03/how-to-call-the-azure-resource-manager-rest-api-from-c/

我從 Token 得到以下信息

在此處輸入圖像描述

要調用此 api,您需要為此 api 生成訪問令牌。 要生成此令牌,您需要具有特定 api 權限的 azure 廣告應用程序。 對於您的 401 錯誤,可能是權限錯誤或不包含 scope。 您可以調試代碼並將訪問令牌和 go 復制到https://jwt.io/以生成它。

檢查您的令牌是否具有正確的 aud https://management.azure.com和 Z31A1FD140BE4BEF2D58A user1E

這是api 的詳細信息,我將向您展示我的詳細信息。

在此處輸入圖像描述 在此處輸入圖像描述

由於委托權限,需要通過ropc流或auth碼流的用戶生成token(這不僅指azure廣告app,在生成access token的過程中還需要使用用戶名和密碼)。

我想你可以在這個官方文檔中找到一個示例。

如果您想生成令牌並在 angular 應用程序中調用 api,您可以參考此示例,請注意示例調用圖 api

在此處輸入圖像描述

如果您更喜歡在后端應用程序中調用 api,您可以將令牌發送到后端程序,因為守護程序應用程序僅支持客戶端憑據流。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM