private void SetAccessToken(AccessToken accessToken) { var cookieOptions = new CookieOptions { Path = "/", Expires = accessToken.Expiration }; var encodedToken = TokenEncoder.Encode(accessToken); Response.Cookies.Append(AccessTokenCookieName, encodedToken, cookieOptions); }
private AccessToken GetAccessToken() { string token; if (!Request.Cookies.TryGetValue(AccessTokenCookieName, out token)) { throw new InvalidOperationException(); } return(TokenEncoder.Decode(token)); }
private void ExpireToken() { string token; if (!Request.Cookies.TryGetValue(AccessTokenCookieName, out token)) { return; } var accessToken = TokenEncoder.Decode(token); var expiredAccessToken = new AccessToken( accessToken.UserId, accessToken.Token, _utcTimeProvider.UtcNow.AddDays(-1)); SetAccessToken(expiredAccessToken); }