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[] { }); }
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); }