4

有什么方法可以让用户登录以保护 Kentico 的前端区域?我应该使用 ASP.NET 成员 API 吗?

4

1 回答 1

6

假设您有 2 个文本框和一个事件处理程序(txtEmail、txtPassword 和 btnSubmit_Click),并且您已经在 kentico 站点管理器中设置了适当的角色,您可以使用如下内容:

    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        CMS.SiteProvider.UserInfo ui = CMS.SiteProvider.UserInfoProvider.AuthenticateUser(txtEmail.Text, txtPassword.Text, CMS.CMSHelper.CMSContext.CurrentSite.SiteName);
        if (ui != null)
        {
            System.Web.Security.FormsAuthentication.SetAuthCookie(ui.UserName, true);
            CMS.CMSHelper.CMSContext.SetCurrentUser(new CMS.CMSHelper.CurrentUserInfo(ui, true));
            CMS.SiteProvider.UserInfoProvider.SetPreferredCultures(ui);
            Response.Redirect("MY_SECURE_PAGE");
        }
        else
        {
            litMessage.Text = "Email/Password incorrect";
        }
    }
于 2011-07-19T01:26:31.117 回答