【Azure 应用服务】能否通过 Authentication 模块配置 Azure AD 保护 API 应用?

问题描述

在App Service Authentication 中配置 Azure AD 注册的应用信息后,根据官方文档,可以让前端应用实现用户 AAD 登录,然后通过前端应用获取的Token,来访问后端的API应用。

 

前端用户登录 ====》 获取访问前端应用Token ====》调用后端API时候传递Token到后端服务 ====》 API 验证 Token ====》授权提供API数据

 

这一目的是为了实现前后端分离后,前端应用的权限也可以访问后端服务。在中国区的App Service中是否可以配置呢?

 

问题解答

是可以实现的。可以按照以下文档开启针对前端应用的身份验证和授权。教程:在 Azure 应用服务中对用户进行端到端身份验证和授权

在配置过程中,需要的注意点有二:

 

1) 在操作“对应用服务进行配置,使之返回可用的访问令牌”时,因为中国区暂时没有Azure Resource Explorer门户,所以只能通过REST API的形式来配置。

替代的操作办法参考如下:

复制代码
https://management.chinacloudapi.cn/subscriptions/<subscriptionid>/resourceGroups/< resourceGroups >/providers/microsoft.web/sites/<sitename>/config/authsettings/?api-version=2020-12-01

 

body 信息:

{

    "properties": {

        "additionalLoginParams": ["response_type=code id_token","resource=xxxxss-ssss5-43ssse-bsssse-xxxxxxxxxxxx"]

    }

}
复制代码

中国区无 Azure Resource Explorer。

 

 

 

 

2)在前端应用中向后端传递Token

在配置前端应用访问后端接口的代码部分:需要显示的传递Token。详细可借鉴:

 

 

参考资料

 Authenticate and authorize users end-to-end in Azure App Service:https://docs.microsoft.com/en-us/azure/app-service/tutorial-auth-aad?pivots=platform-linux#call-api-securely-from-server-code

 

posted @   路边两盏灯  阅读(146)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2020-08-23 【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果
2020-08-23 【应用程序见解 Application Insights】在Application Insights中通过自定义查询结果定义指标并显示在Dashboard中
2020-08-23 【应用程序见解 Application Insights】使用Azure Monitor Application Insights Agent获取Azure VM中监控数据及IIS请求指标等信息
点击右上角即可分享
微信分享提示