繁体   English   中英

Azure ASP.NET 核心 MVC WebApp 的 AD 身份验证 - 如何自定义应用程序的 Redirect_URI! 发送

[英]Azure AD Authentication for ASP.NET Core MVC WebApp - how to customize the Redirect_URI the APPLICATION! sends

我有一个 ASP.NET Core MVC,基于 .NET6 的 WebApplication 作为 docker 图像托管在 AWS 中。 它使用 Azure AD 身份登录用户。

当用户打开页面并使用 Microsoft AD 成功登录时,但登录 URL 中提供的重定向不正确。 https://login.microsoftonline.com/{guid}/oauth2/v2.0/authorize?client_id={guid}&redirect_uri=http://{my-domain}/signin-oidc

Azure 应用程序重定向 URL

至于流程:

  1. 用户在私人视图中打开页面(无 cookie/会话)
  2. 用户被重定向到 Microsoft 登录页面
  3. 用户登录成功
  4. 用户被重定向到提供的 redired_uri
  5. 用户遇到 redirect_uri 不正确的错误消息。

在此处输入图像描述

现在的问题是,在重定向期间,request_uri 有 http,这是无效的。 虽然这不是我在应用程序中设置的内容。 如何/在哪里可以编辑/覆盖请求期间发送的 redirect_uri 查询参数?

有很多关于如何编辑 Azure 应用程序 URI 的 SO 帖子,但那个是正确的。 REQUEST 是不正确的。

我也不想重定向到替代页面,/home 是完美的。 问题是该方案标记为http://而不是https://

program.cs的相关截图

程序

Azure 身份

附加程序

我感谢您的帮助!

问题

发生这种情况是因为您的 Docker 应用程序正在使用 HTTP。SSL 似乎已被 ALB 或类似程序终止。

关于重定向 URI

现在,回答你的问题,这个/signin-oidc是从哪里来的? .NET 库在构造身份验证请求时在内部使用这个硬编码的重定向 Uri。 一旦 AzureAD 重定向回此 Uri,库就会在内部拦截并从查询参数中检索code 库通过再次请求图 API 进一步获取访问令牌或 ID 令牌。

解决方案

对于同一问题,您可以查看并实施以下链接中建议的任何解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM