Exemple #1
0
        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;
        }
Exemple #2
0
        public LoginInfo(MobileLoginConfiguration configuration, CSRFToken csrfToken, HttpOnlyLoginCookieValue httpCookie, UserAccessibleLoginCookieValue userCookie)
        {
            this.configuration = configuration;
            this.csrfToken     = csrfToken;
            this.httpCookie    = httpCookie;
            this.userCookie    = userCookie;

            dirty = false;
        }
Exemple #3
0
        public LoginInfo(MobileLoginConfiguration configuration)
        {
            this.configuration = configuration;
            csrfToken          = null;
            httpCookie         = new HttpOnlyLoginCookieValue();
            userCookie         = new UserAccessibleLoginCookieValue();
            mobileLoginInfo    = new MobileLoginInfo {
                TenantId = configuration.DefaultTenantId
            };

            dirty = false;
        }
Exemple #4
0
        public void Logout()
        {
            userCookie = new UserAccessibleLoginCookieValue();
            httpCookie = new HttpOnlyLoginCookieValue();

            mobileLoginInfo = new MobileLoginInfo {
                TenantId = configuration.DefaultTenantId
            };

            csrfToken = userCookie.CSRFToken;

            dirty = true;
        }
Exemple #5
0
 internal UserAccessibleLoginCookieValue()
 {
     CSRFToken = CSRFToken.Anonymous;
     UserId    = 0;
     Username  = "";
 }
Exemple #6
0
 public bool SlowEquals(CSRFToken other)
 {
     return(other != null && SignatureHelper.SlowEquals(value, other.value));
 }