public void Login(int userId, int tenantId, string username, bool isPersistent, bool hasSessionStorage) { var previousLoginId = httpCookie.IsAnonymous ? null : httpCookie.LoginId; userCookie = new UserAccessibleLoginCookieValue { UserId = userId, Username = username, CSRFToken = SecureTokenGenerator.Instance.GenerateCSRFToken() }; mobileLoginInfo = new MobileLoginInfo { UserId = userId, TenantId = tenantId, IsPersistent = isPersistent }; httpCookie = new HttpOnlyLoginCookieValue { LoginId = MobileLoginReadWriter.Write(configuration.EncryptKey, mobileLoginInfo) }; if (hasSessionStorage) { CreateMobileLoginInfo(httpCookie.LoginId, previousLoginId); } csrfToken = userCookie.CSRFToken; dirty = true; }
public LoginInfo(MobileLoginConfiguration configuration, CSRFToken csrfToken, HttpOnlyLoginCookieValue httpCookie, UserAccessibleLoginCookieValue userCookie) { this.configuration = configuration; this.csrfToken = csrfToken; this.httpCookie = httpCookie; this.userCookie = userCookie; dirty = false; }
public LoginInfo(MobileLoginConfiguration configuration) { this.configuration = configuration; csrfToken = null; httpCookie = new HttpOnlyLoginCookieValue(); userCookie = new UserAccessibleLoginCookieValue(); mobileLoginInfo = new MobileLoginInfo { TenantId = configuration.DefaultTenantId }; dirty = false; }
public void Logout() { userCookie = new UserAccessibleLoginCookieValue(); httpCookie = new HttpOnlyLoginCookieValue(); mobileLoginInfo = new MobileLoginInfo { TenantId = configuration.DefaultTenantId }; csrfToken = userCookie.CSRFToken; dirty = true; }
internal UserAccessibleLoginCookieValue() { CSRFToken = CSRFToken.Anonymous; UserId = 0; Username = ""; }
public bool SlowEquals(CSRFToken other) { return(other != null && SignatureHelper.SlowEquals(value, other.value)); }