示例#1
0
        public AccessToken CreateAccessToken(User user)
        {
            var accessTokenExpiration = DateTime.Now.AddMinutes(tokenOptions.AccessTokenExpiration);

            var securityKey = SignHandler.GetSecurityKey(tokenOptions.SecurityKey);
            SigningCredentials signingCredentials = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256Signature);

            JwtSecurityToken jwtSecurityToken = new JwtSecurityToken
                                                (
                issuer: tokenOptions.Issuer,
                audience: tokenOptions.Audience,
                expires: accessTokenExpiration,
                notBefore: DateTime.Now,
                signingCredentials: signingCredentials,
                claims: GetClaims(user)
                                                );

            var handler = new JwtSecurityTokenHandler();
            var token   = handler.WriteToken(jwtSecurityToken);

            AccessToken accessToken = new AccessToken();

            accessToken.Token        = token;
            accessToken.RefreshToken = CreateRefreshToken();
            accessToken.Expiration   = accessTokenExpiration;

            return(accessToken);
        }
        public AccessToken CreateAccessToken(User user)
        {
            var accessTokenExpirations = DateTime.Now.AddMinutes(_tokenOptions.AccessTokenExpiration);
            var securityKey            = SignHandler.GetSecurityKey(_tokenOptions.SecurityKey);
            var signCredentials        = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256Signature);
            var jwtSecurityToken       = new JwtSecurityToken(_tokenOptions.Issuer, _tokenOptions.Audience,
                                                              expires: accessTokenExpirations, notBefore: DateTime.Now,
                                                              signingCredentials: signCredentials, claims: GetClaim(user));

            var handler     = new JwtSecurityTokenHandler();
            var token       = handler.WriteToken(jwtSecurityToken);
            var accessToken = new AccessToken
            {
                Token        = token,
                RefreshToken = CreateRefreshToken(),
                Expiration   = accessTokenExpirations
            };

            return(accessToken);
        }