我的要求是,一旦用户登录并通过身份验证,URL 应更改为 SSL,当他注销时,URL 将返回 HTTP。
我知道 webpart 中的属性,我们可以在其中设置 YES/NO/INHERITS/NEVER。
我可以永久设置 HTTPS,但不能动态设置。
任何建议/帮助表示赞赏。
我的要求是,一旦用户登录并通过身份验证,URL 应更改为 SSL,当他注销时,URL 将返回 HTTP。
我知道 webpart 中的属性,我们可以在其中设置 YES/NO/INHERITS/NEVER。
我可以永久设置 HTTPS,但不能动态设置。
任何建议/帮助表示赞赏。
我不知道 Kentico 中有任何功能可以执行此操作,但您应该能够创建一个 webpart 并将其放置在母版页上。此 Web 部件将只检查当前用户,如果有登录的用户重定向到 https 版本,反之亦然。
您还可以添加一些逻辑以确保它不会在 cmsdesk 的编辑选项卡中执行此操作。
您可以检查用户
CMSContext.CurrentUser
可以在以下位置找到有关重定向到安全页面的一些帮助
正如rocky所说,没有开箱即用的功能可以为您做到这一点。
您需要创建一个 Web 部件,就像 Lukek 建议的那样,检查用户是否已登录并将他们重定向到 https 地址。
下面的代码将重定向。
if (!Request.IsLocal && !Request.IsSecureConnection)
{
string redirectUrl = Request.Url.ToString().Replace("http:", "https:");
Response.Redirect(redirectUrl);
}
正如建议的那样,您需要检查 CMSContext.CurrentUser 但是我也会使用 HttpContext.User 属性。
这将强制请求为 https。