public ActionResult <bool> Logout() { var cookies = Request.Cookies; AuthTokenBlob authTokenBlob = DataEncryption.Decrypt <AuthTokenBlob>(cookies[CookieName.AuthToken]); BurnOldToken(authTokenBlob.Email); return(true); }
private void PutAuthUserToDb(AuthTokenBlob authTokenBlob) { LoggedUser loggedUser = new LoggedUser { Email = authTokenBlob.Email, Token = authTokenBlob.Token }; _repository.AddLoggedUser(loggedUser); }
private void Authenticate(User user) { var cookies = Response.Cookies; var authTokenBlob = new AuthTokenBlob(user.Email, TokenProvider.NewAuthToken); PutAuthUserToDb(authTokenBlob); string encryptedBlob = DataEncryption.Encrypt(authTokenBlob); cookies.Append(CookieName.AuthToken, encryptedBlob, new CookieOptions { HttpOnly = true, Path = "/" }); }