我目前在我的AWS服务上设置了以下内容
我还使用AWS负载均衡器来处理SSL验证等,以便在HTTPS上运行应用程序。
MVC客户端应用程序和安全服务也在不同的公共网址上。
我面临的问题如下:
当用户浏览MVC客户端(https://mywebsite.net)上的受保护操作时,他们会通过其公共地址(https://auth.mywebsite.net)重定向到我的安全服务。安全服务将客户端应用程序的地址视为http://mywebsite.net,因此客户端记录的设置与客户端重定向uri为http://mywebsite.net/signin-oidc,以便成功验证客户端。
用户成功登录后,会将其重定向回客户端应用程序的signin-oidc端点,但这是在HTTP上完成的:(这会导致用户浏览器出现安全警告,因为它们从HTTPS转到HTTP。
是否有一种方法(在平衡器后面)可以指示安全服务重定向到HTTPS而不是HTTP。
或
是否存在客户端传递用户访问的URL(https://mywebsite.net)而非平衡器输出(http://mywebsite.net)以用于客户端验证的方式。
对此有任何帮助将不胜感激。
此致
斯图尔特弗格森答案 0 :(得分:0)
请参阅this链接。请查看身份服务器4上的配置,确保您的redirecturi设置正确。
我特指这段代码:
在身份服务器4上: Config.cs
//使用隐式流的MVC客户端 新客户 { ClientId =“mvc”, ClientName =“MVC Client”,
AllowedGrantTypes = GrantTypes.Implicit,
ClientSecrets = { new Secret("373f4671-0c18-48d6-9da3-962b1c81299a".Sha256()) },
ClientUri="http://localhost:5500",
RedirectUris = {"http://localhost:5001/signin-oidc",},
LogoutUri = "http://localhost:5001/signout-oidc",
PostLogoutRedirectUris = { "http://localhost:5001/signout-callback-oidc" },
AllowOfflineAccess = true,
AllowedScopes =
{
"api1",
"profile",
"openid"
}
},