Пример #1
0
        public JwtSecurityToken CreateToken(AutenticacionUsuarioContraseniaDataView usuario)
        {
            Argument.ThrowIfNull(() => usuario);

            var tokenDescriptor = new SecurityTokenDescriptor()
            {
                Expires = DateTime.UtcNow.AddMinutes(this.jwtConfig.ExpirationMinutes),

                Issuer = this.jwtConfig.Issuer,

                SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(this.jwtConfig.SecurityKey), this.jwtConfig.Algorithm),

                Subject = new ClaimsIdentity(new[]
                {
                    // Usuario
                    new Claim(ClaimTypes.NameIdentifier, usuario.Id.ToString(), ClaimValueTypes.Integer64),
                    new Claim(ClaimTypes.Name, usuario.NombreUsuario),
                    new Claim("ssid", usuario.IdSesion.ToString(), ClaimValueTypes.Integer64)
                })
            };

            JwtSecurityTokenHandler tokenHandler = this.jwtSecurityTokenHandlerFactory.Create();
            SecurityToken           token        = tokenHandler.CreateToken(tokenDescriptor);

            return(new JwtSecurityToken()
            {
                Access_token = tokenHandler.WriteToken(token),
                Expires_in = Convert.ToInt32(TimeSpan.FromMinutes(this.jwtConfig.ExpirationMinutes).TotalSeconds),
                Token_type = this.jwtConfig.TokenType
            });
        }
Пример #2
0
        private JwtSecurityToken CrearJsonWebToken(AutenticacionUsuarioContraseniaDataView usuario)
        {
            JwtSecurityToken token = this.jwtSecurityTokenHandlerAdapter.CreateToken(usuario);

            // const String LoginSuccededMessageTemplate = "Usuario: {NombreUsuario}, Sesión: {SessionId}";

            // Log.Logger.InformationEvent(Event.LoginSucceded, LoginSuccededMessageTemplate, usuario.NombreUsuario, usuario.IdTerminal, usuario.IdSesion);

            return(token);
        }
Пример #3
0
        private void CrearSesion(AutenticacionUsuarioContraseniaDataView usuario)
        {
            var command = new CrearSesionCommand()
            {
                IdUsuario = usuario.Id,
                UserAgent = ""
            };

            this.commandProcessor.Process(command);
            usuario.IdSesion = command.IdSesionCreada;
        }