尝试使用Azure AD保护Web API

时间:2019-10-30 18:36:10

标签: azure azure-active-directory asp.net-web-api2

我有一个使用this tutorial创建的Web API项目,我正在尝试使用Azure AD对其进行保护。

根据教程,当我创建项目时,只要我想要的控制器上有<Authorize>,就可以选择“更改身份验证”并输入我的AAD信息和应该只是可以“工作”的身份验证保护:

Azure AD Tenant Info

根据本教程,我需要在Azure门户中将API添加为应用程序,但由于它们的步骤和屏幕截图较旧且Azure门户已重新组织,因此其步骤和屏幕截图令人困惑。它说:

  

下一步是将“ WebAPIServerSingleTenant”添加为可在本机应用程序中访问的应用程序。导航到“ WebAPIClientSingleTenant”应用,然后将“ WebAPIServerSingleTenant”添加到批准的列表中(也请选中该复选框)

但是当我在创建项目时从Visual Studio中添加租户信息时,会自动在AAD中创建应用注册,因此我不确定它要我做什么。

此外,例如,当我尝试从Postman调用API时,尽管在请求标头中生成并传递了访问令牌,但我仍然得到“此请求的授权已被拒绝”。 / p>

使用Azure AD保护我的Web API时需要遵循哪些步骤?

1 个答案:

答案 0 :(得分:0)

您在上面引用的“下一步是添加...”指令,是关于在您的本地应用的AAD注册中添加对API应用的引用。要注册本机应用,转到Azure门户并使用“应用程序注册”。linked in your article的使用说明已过时-AAD UI现在完全不同,而应使用official samples之一,尤其是{{3 }}访问API。