예제 #1
0
        private string CreateJwtTokenForClient(AuthClientUser authModel)
        {
            try
            {
                JwtSettings settings = new JwtSettings();
                jwtModel = settings.Initiate();

                SymmetricSecurityKey key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(jwtModel.Key));

                List <Claim> jwtClaims = new List <Claim>();

                jwtClaims.Add(new Claim(JwtRegisteredClaimNames.Sub, authModel.User.MobileNo.ToString()));
                jwtClaims.Add(new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()));

                jwtClaims.Add(new Claim("IsAuthenticated", authModel.IsAuthenticated.ToString().ToLower()));

                var token = new JwtSecurityToken(jwtModel.Issuer, jwtModel.Audience, jwtClaims, DateTime.UtcNow, DateTime.UtcNow.AddMinutes(jwtModel.MinutesToExpiration), new SigningCredentials(key, SecurityAlgorithms.HmacSha256));

                return(new JwtSecurityTokenHandler().WriteToken(token));
            }

            catch (Exception ex)
            {
                return(ex.ToString());
            }
        }
예제 #2
0
        private string CreateJwtToken(AuthUserModel authModel)
        {
            try
            {
                JwtSettings settings = new JwtSettings();
                jwtModel = settings.Initiate();

                SymmetricSecurityKey key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(jwtModel.Key));

                List <Claim> jwtClaims = new List <Claim>();

                jwtClaims.Add(new Claim(JwtRegisteredClaimNames.Sub, authModel.User.Username.ToString()));
                jwtClaims.Add(new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()));

                jwtClaims.Add(new Claim("IsAuthenticated", authModel.IsAuthenticated.ToString().ToLower()));

                var token = new JwtSecurityToken(jwtModel.Issuer, jwtModel.Audience, jwtClaims, DateTime.UtcNow, DateTime.UtcNow.AddMinutes(jwtModel.MinutesToExpiration), new SigningCredentials(key, SecurityAlgorithms.HmacSha256));

                return(new JwtSecurityTokenHandler().WriteToken(token));
            }

            catch (Exception ex)
            {
                return(errorLogService.InsertToErrorLog(ex, MethodBase.GetCurrentMethod().Name, Request.Headers["UserInfo"].ToString()).ToString());
            }
        }
예제 #3
0
        public JwtModel GetJwtSettings()
        {
            JwtSettings settings = new JwtSettings();

            return(settings.Initiate());
        }