public void CheckPasswordTest() { string logonName = "*****@*****.**"; AMSAdmin user = AMSAdminSqlAdapter.Instance.CheckPassword(logonName, "password"); Assert.IsNotNull(user); Assert.AreEqual(logonName, user.LogonName); }
private static void WriteCookie(AMSAdmin user, string timeOffsetValue) { SessionAuthenticationModule sam = (SessionAuthenticationModule) HttpContext.Current.ApplicationInstance.Modules["SessionAuthenticationModule"]; IClaimsPrincipal principal = new ClaimsPrincipal(new GenericPrincipal(new GenericIdentity(user.LogonName), null)); principal.Identities[0].Claims.Add(new Claim("TimeOffset", timeOffsetValue)); principal.Identities[0].Claims.Add(new Claim("AMSAdminID", user.UserID)); principal.Identities[0].Claims.Add(new Claim("AMSAdminName", user.Name)); SessionSecurityToken token = sam.CreateSessionSecurityToken(principal, null, DateTime.Now, DateTime.Now.AddMinutes(60), false); sam.WriteSessionTokenToCookie(token); }
protected void SignInButton_Click(object sender, EventArgs e) { try { string logonName = this.signInName.Text.Trim(); AMSAdmin user = AMSAdminSqlAdapter.Instance.CheckPassword(logonName, this.password.Value); if (user == null) { throw new ApplicationException("用户名或密码不正确"); } WriteCookie(user, timeOffset.Value); Response.Redirect(this.Context.Request.QueryString["ReturnUrl"]); } catch (System.Exception ex) { this.errorMessage.Text = HttpUtility.HtmlEncode(ex.Message); } }