Exemple #1
0
        public static string[] RolesPorTipoUsuario(TipoUsuarioEnum tipoUsuario)
        {
            if (TipoUsuarioEnum.Operador == tipoUsuario)
            {
                return(new string[]
                {
                    VENDA_INDEX, VENDA_ADICIONAR
                });
            }

            if (TipoUsuarioEnum.BackOffice == tipoUsuario)
            {
                return(new string[]
                {
                    VENDA_MUDAR_STATUS, VENDA_EDITAR
                });
            }

            if (TipoUsuarioEnum.Coordenador == tipoUsuario)
            {
                return(new string[]
                {
                    USUARIO_INDEX, USUARIO_ADICIONAR, USUARIO_EDITAR, USUARIO_EXCLUIR,
                    VENDA_INDEX, VENDA_ADICIONAR, VENDA_EDITAR, VENDA_EXCLUIR, VENDA_MUDAR_STATUS
                });
            }

            if (TipoUsuarioEnum.AdmInterna == tipoUsuario)
            {
                return(new string[]
                {
                    TAREFA_INDEX, TAREFA_ASSUMIR, TAREFA_DEVOLVER, TAREFA_MUDAR_STATUS
                });
            }

            if (TipoUsuarioEnum.Administrador == tipoUsuario)
            {
                return(Roles);
            }

            return(new string[] { });
        }
Exemple #2
0
        private void CriarAutorizacaoAsync(TipoUsuarioEnum tipoUsuario)
        {
            var      secret       = Encoding.ASCII.GetBytes("57a1f196-7e43-4709-bf4f-e86321c869eb");
            var      criadoEm     = DateTime.UtcNow;
            DateTime?expiraEm     = criadoEm.AddSeconds(7200);
            var      tokenHandler = new JwtSecurityTokenHandler {
            };

            var token = tokenHandler.CreateToken(new SecurityTokenDescriptor
            {
                Subject = new ClaimsIdentity(new List <Claim> {
                    new Claim("Login", Login),
                    new Claim(ClaimTypes.NameIdentifier, UsuarioId.ToString()),
                    new Claim(ClaimTypes.Role, ((int)tipoUsuario).ToString())
                }),
                Expires            = expiraEm,
                SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(secret), SecurityAlgorithms.HmacSha256Signature)
            });

            TokenAcesso = tokenHandler.WriteToken(token);
        }