C# GCP auth2.0 403 不匹配重定向

Posted

技术标签:

【中文标题】C# GCP auth2.0 403 不匹配重定向【英文标题】:C# GCP auth2.0 403 mismatch redirect 【发布时间】:2021-06-16 06:36:11 【问题描述】:

我正在使用此代码尝试从 Google 获取身份验证:

 await HttpContext.ChallengeAsync("Google", new AuthenticationProperties() RedirectUri = "/");

问题是重定向总是采用 HTTP url,即使我是从 https url 运行它。

https://something-sss.com 的网址已在 GCP API 标识符中列入白名单。

但它总是使用 http 的 Uri

【问题讨论】:

你能包含一段可重现的代码吗?这份文件[1] 与您正在做的事情有多接近? [1]docs.microsoft.com/en-us/aspnet/core/security/authentication/… 事实上,这是你公开你的应用程序的方式,它是在参数中获取的。对我来说,我使用 dockerfile 来公开我的应用程序,我曾经使用Expose http://*:80 即使关联的域是使用 HTTPS 启动的,在应用程序内部它始终是一个 HTTP 调用,因此所有重定向都是通过 http 协议完成的。我已将我的应用程序公开方式从 http://*:80 更改为 https://*:443 在代码中我使用 kestrel 启动应用程序,现在它运行良好谢谢 感谢您的回复。由于 *** 是一个问答网站,我已将您的评论作为 wiki 答案发布,以便对其他人有所帮助。 我对这个 wiki 和其他东西不太熟悉 .. 但我很乐意提供帮助。谢谢安东尼奥 【参考方案1】:

为了公开我的 docker 应用程序,我曾经使用 Expose http://*:80,即使关联的域是使用 HTTPS 启动的,在应用程序内部它始终是一个 HTTP 调用,因此所有重定向都是通过 http 协议完成的。 我在使用 kestrel 启动应用程序的代码中将我的应用程序公开方式从 http://*:80 更改为 https://*:443,现在它运行良好。

【讨论】:

以上是关于C# GCP auth2.0 403 不匹配重定向的主要内容,如果未能解决你的问题,请参考以下文章

403重定向不起作用

为啥我的 mvc 项目重定向到默认的 403 错误页面,而不是我重定向到的页面,而不是在本地的 IIS 上?

使用 .htaccess 重定向 403 错误

JMeter:auth2.0认证流程(B2C架构)

geoip 将国家/地区重定向到 403

重定向 + 403 错误