首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >https://<myapp>.azurewebsites.net/.auth/login/aad/callback是什么意思?

https://<myapp>.azurewebsites.net/.auth/login/aad/callback是什么意思?
EN

Stack Overflow用户
提问于 2019-03-28 12:58:00
回答 3查看 2.5K关注 0票数 4

我正在使用Azure App为我的Web应用程序配置身份验证。我选择了AAD和Express模式来注册我的应用程序。

它将我在AAD的申请注册为https://.azurewebsites.net/.auth/login/aad/callback。我截获了上述回调的请求GET\ POST。它发送访问令牌。

问题:我还没有在web应用程序中实现上述答复-url的控制器。谁在正确地处理它?

请给我看一下上面的回音。如果需要,可以更改为不同的POST Url吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-03-30 20:28:54

/.auth/login/{provider}/callback端点由Azure自己的Easy 1公开。

在1中,每个身份提供者都有一个。

简而言之,它们负责从提供程序中提取访问令牌等,设置cookie等等。它们是在请求登陆到您的应用程序之前处理的。

1

票数 5
EN

Stack Overflow用户

发布于 2019-03-28 17:24:06

我觉得你搞错了。

这不过是一个登录回调,也就是说,如果您直接打开这个链接,您将被重定向到auth provider (google、facebook、AAD等)的登录页面,成功登录后,它将生成一个令牌,您可以使用该令牌访问API。

您可以轻松地更改登录后的URL -> 请转到这个链接并阅读整个线程。

其他有用链接

Facebook auth

票数 2
EN

Stack Overflow用户

发布于 2020-06-24 06:58:30

这是一个很大的帖子,但如果你阅读,你会得到端到端的观点重定向网址故事在Azure AD。

假设您有一个以蔚蓝形式托管的网站,它的网址是这样的。假设这个web应用程序是广告保护的。

代码语言:javascript
运行
复制
https://abcd.azurewebsites.net/

当您通过浏览器访问此网站时,如果您尚未通过身份验证,您将被重定向到如下所示的URL。

代码语言:javascript
运行
复制
https://login.microsoftonline.com/<tenant-id>/oauth2/authorize?response_type=id_token&redirect_uri=https%3A%2F%2Fabcd.azurewebsites.net%2F.auth%2Flogin%2Faad%2Fcallback&client_id=<app-client-d>&scope=openid+profile+email&response_mode=form_post&nonce=<nonce-value>&state=redir%3D%252F

查看上面URL中的redirect_uri参数值。我在这里粘贴URL解码值。

代码语言:javascript
运行
复制
https://abcd.azurewebsites.net/.auth/login/aad/callback

这里定义了将这个url作为redirect_uri来获取的原因。

https://learn.microsoft.com/en-us/azure/app-service/overview-authentication-authorization#authentication-flow请参考“认证流程表”表中的“2.POST身份验证”定义。

这是默认行为。当您在身份验证之前访问https://abcd.azurewebsites.net/时,redirect_uri将是< you _redirect_uri>/..auth/redirect_uri/aad/回调

这就是为什么我们需要在AD应用程序注册的重定向uri部分中有这个URL的原因。如果这个URL不存在,AD只会简单地说你没有经过身份验证。希望这是我们填充.azurewebsites.net/..auth/login/aad/回调值的原因所在。

现在我们知道了为什么要重定向到..auth/login/aad/回调。让我们看看认证后会发生什么。完成身份验证后,您将被重定向到.azurewebsites.net/..auth/login/aad/回调。现在这个电话由天蓝色的容易处理。

这里需要注意的更重要的一点是,对此调用的响应是什么.

注意响应中的状态代码和位置标头。除此之外,它还做了很多事情,在cookie中设置令牌。如果您有兴趣了解其他响应头,请在developer窗口中执行查找。(带有保存日志选项的f12)

它会重定向到网站的根部。这部分是由Azure自己轻松完成的。

如果使用AD进行身份验证,则可以使用自定义redirec_uri值。(这是由adalapicliens完成的)只需确保您在redirect_uri中添加的任何值都应该出现在AD的重定向URI部分中,这样身份验证才能成功。

如果要覆盖默认行为,即.azurewebsites.net/..auth/login/aad/callback,则必须使用"应用网关“。您还可以用应用程序网关覆盖响应位置标头。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55398258

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档