如何向具有CURL或ARC的Azure AD授权保护的Web Api发出请求

考古学

我有一个Web Api(只是启用了Azure AD授权选项的VS向导的结果)。我想直接测试此api,而不使用Azure API管理门户或其他任何工具。特别是我想使用高级REST客户端(通常称为ARC:https : //chrome.google.com/webstore/detail/advanced-rest-client/hgmloofddffdnphfgcellkdfbfbjeloo),但是任何Web客户端都会适合我,例如curl。

有人可以通过所有必要的步骤来执行适当的授权或就此主题推荐好的资源吗?

我希望所有工作都可以手动完成,除了浏览器和curl或arc以外,不要使用任何其他工具

Fei Xue - MSFT

要向受Azure AD保护的Web API发出请求,我们需要通过OAuth 2.0获取访问令牌。在通过Visual Studio创建Web API项目之后,我们仍然需要在Azure门户上注册一个用于调用Web API的应用程序。

例如,当我使用带有Azure AD身份验证的Visual Studio向导创建Web API项目active-directory-webapi时,Azure AD为我创建了一个应用程序active-directory-webapi

然后,我通过此链接打开Azure AD门户,并注册一个名为active-directory-webapi-client的Web应用程序由于它是一个Web应用程序,因此我们需要为其生成一个秘密。要使用调用Web API,我们需要添加Web API应用程序以为其授予权限。这是我手动注册的应用程序基本信息的图:在此处输入图片说明

然后,我们可以使用OAuth 2.0要求此应用提供令牌:

Get: https://login.microsoftonline.com/{tenantId}/oauth2/authorize?response_type=code&client_id={clientId in figure }&redirect_uri={redirect Url in figure}

然后,我们需要输入用户名/密码并在Url中获取OAuth代码。我们可以通过以下请求通过OAuth代码获取令牌:

POST: https://login.microsoftonline.com/{tenantId}/oauth2/token
client_id={client_id in figure}&client_secret{secret in figure}&code={OAuth code in the previews request}&grant_type=authorization_code&redirect_uri={ redirect Url in figure }&resource={ it as the Audience in the web.config of web API project} 

最后,我们可以使用上面请求中的令牌来调用Web API:

Get: https://localhost:44305/api/values
authorization: bearer {accessToken}

您可以在此处参考有关OAuth 2.0授权流程的更多详细信息

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

向R发出多个Web API请求的信号

来自分类Dev

向Azure Blob存储[REST API]发出GET请求时授权失败

来自分类Dev

如何保护 Web API 不被未经授权的 SPA 访问

来自分类Dev

我尝试从具有JWT令牌的API发出GET请求时遇到错误401(未经授权)

来自分类Dev

Azure AD API请求401未经授权

来自分类Dev

如何向包含多个HTTP POST的SendGrid Web API发出请求

来自分类Dev

从Angular调用受Azure AD保护的Web API

来自分类Dev

验证受Azure AD保护的WEB API的访问令牌

来自分类Dev

如何从getStaticProps向API路由发出请求

来自分类Dev

AngularJS-向Web Api端点发出的$ HTTP错误请求

来自分类Dev

Node.js:Google Analytics(分析)API:如何使用“服务帐户”发出授权的只读Management API请求?

来自分类Dev

Python-如何使用请求向API发出PATCH请求

来自分类Dev

Retrofit + RxJava没有发出API请求

来自分类Dev

如何使用 React 发出 API 请求?

来自分类Dev

向Web服务发出POST请求

来自分类Dev

如何使用Passport-azure-ad(/ w vue-msal)保护Web API

来自分类Dev

当我使用参数向 Web API 发出请求时,为什么我得到全部而不是单个

来自分类Dev

如何使用restapi向Github存储库发出api请求?

来自分类Dev

使用Azure AD保护.NET Framework Web API的安全(客户端凭据流)

来自分类Dev

401向Web API发送Ajax请求时未经授权

来自分类Dev

如何在php中向eBay Restful API发出GET cURL请求

来自分类Dev

使用JMETER向具有二进制主体的RESTful API发出POST请求

来自分类Dev

向LinkedIn API发出请求的结果是401

来自分类Dev

节点js,向Google api发出https发布请求

来自分类Dev

使用node.js向API发出请求

来自分类Dev

向Node.js中的JSON API发出GET请求?

来自分类Dev

向Pixellena Lux API请求时发出UnhandledPromiseRejectionWarning警告

来自分类Dev

向Objective-C中的解析API发出GET请求

来自分类Dev

InvalidURIError使用Ruby向Facebook Graph API发出请求

Related 相关文章

  1. 1

    向R发出多个Web API请求的信号

  2. 2

    向Azure Blob存储[REST API]发出GET请求时授权失败

  3. 3

    如何保护 Web API 不被未经授权的 SPA 访问

  4. 4

    我尝试从具有JWT令牌的API发出GET请求时遇到错误401(未经授权)

  5. 5

    Azure AD API请求401未经授权

  6. 6

    如何向包含多个HTTP POST的SendGrid Web API发出请求

  7. 7

    从Angular调用受Azure AD保护的Web API

  8. 8

    验证受Azure AD保护的WEB API的访问令牌

  9. 9

    如何从getStaticProps向API路由发出请求

  10. 10

    AngularJS-向Web Api端点发出的$ HTTP错误请求

  11. 11

    Node.js:Google Analytics(分析)API:如何使用“服务帐户”发出授权的只读Management API请求?

  12. 12

    Python-如何使用请求向API发出PATCH请求

  13. 13

    Retrofit + RxJava没有发出API请求

  14. 14

    如何使用 React 发出 API 请求?

  15. 15

    向Web服务发出POST请求

  16. 16

    如何使用Passport-azure-ad(/ w vue-msal)保护Web API

  17. 17

    当我使用参数向 Web API 发出请求时,为什么我得到全部而不是单个

  18. 18

    如何使用restapi向Github存储库发出api请求?

  19. 19

    使用Azure AD保护.NET Framework Web API的安全(客户端凭据流)

  20. 20

    401向Web API发送Ajax请求时未经授权

  21. 21

    如何在php中向eBay Restful API发出GET cURL请求

  22. 22

    使用JMETER向具有二进制主体的RESTful API发出POST请求

  23. 23

    向LinkedIn API发出请求的结果是401

  24. 24

    节点js,向Google api发出https发布请求

  25. 25

    使用node.js向API发出请求

  26. 26

    向Node.js中的JSON API发出GET请求?

  27. 27

    向Pixellena Lux API请求时发出UnhandledPromiseRejectionWarning警告

  28. 28

    向Objective-C中的解析API发出GET请求

  29. 29

    InvalidURIError使用Ruby向Facebook Graph API发出请求

热门标签

归档