O acesso apenas de leitura a bases de dados é essencial para ferramentas de relatórios, dashboards de análises e membros da equipa que precisam de visualizar dados sem capacidade de os modificar. O Painel MySQL da Nobregas torna fácil criar um utilizador com apenas privilégios SELECT — podem ler tudo mas não alterar nada.
Quando Utilizar Acesso Apenas de Leitura
Conceda acesso apenas SELECT quando:
- Uma ferramenta de relatórios ou dashboard precisa de consultar a base de dados.
- Um membro da equipa precisa de visualizar dados mas não deve modificá-los.
- Uma integração de terceiros só precisa de ler informação.
- Quer um utilizador de exploração seguro para testar consultas sem risco.
- Segue o princípio do menor privilégio para segurança reforçada.
Método 1: Durante a Criação do Utilizador
- Inicie sessão em mysql.nobregas.org.
- Vá a Database Users > clique em Create User.
- Introduza o nome de utilizador (ex.:
readonlyoureports). - Defina uma palavra-passe forte (utilize o botão gerador).
- Defina o host como
localhost(ou um IP específico para acesso remoto). - Selecione a base de dados no dropdown Grant to Database.
- A secção Privileges aparece com ALL PRIVILEGES marcado.
- Desmarque o checkbox ALL PRIVILEGES.
- Os checkboxes de privilégios individuais aparecem.
- Marque apenas SELECT na categoria Data.
- Deixe todos os outros checkboxes desmarcados.
- Clique em Create User.
O utilizador agora tem acesso apenas de leitura — pode executar consultas SELECT mas não pode INSERT, UPDATE, DELETE ou modificar a estrutura da base de dados.
Método 2: Via Manage (Utilizador Existente)
Se tem um utilizador existente e quer adicionar acesso apenas de leitura a uma nova base de dados:
- Vá a Database Users e clique em Manage no utilizador.
- Na secção Add Database Access, selecione a base de dados.
- Desmarque ALL PRIVILEGES.
- Marque apenas SELECT.
- Clique em Add Grant.
Método 3: Fazer Downgrade de Privilégios Existentes
Se um utilizador atualmente tem ALL PRIVILEGES e quer restringi-lo a apenas leitura:
- Clique em Manage no utilizador.
- Encontre a base de dados em Current Grants.
- Clique em Edit nesse grant.
- Desmarque ALL PRIVILEGES.
- Marque apenas SELECT.
- Clique em Save Changes.
Os privilégios do utilizador são imediatamente reduzidos. Ainda pode conectar-se mas só pode ler dados.
O Que um Utilizador Apenas SELECT Pode Fazer
- Executar consultas
SELECTpara ler dados de qualquer tabela na base de dados concedida. - Utilizar instruções
SHOW TABLES,DESCRIBEeEXPLAIN. - Fazer join de tabelas e utilizar funções de agregação (COUNT, SUM, AVG, etc.).
O Que um Utilizador Apenas SELECT Não Pode Fazer
- Inserir novas linhas (
INSERT) - Atualizar linhas existentes (
UPDATE) - Eliminar linhas (
DELETE) - Criar, alterar ou eliminar tabelas
- Criar views, rotinas ou triggers
- Modificar a base de dados de qualquer forma
Verificar Acesso Apenas de Leitura
Após criar ou atualizar o utilizador, verifique a lista de Database Users. A coluna da base de dados mostra um badge azul 1 privs, indicando que apenas um privilégio (SELECT) está concedido. Clique em Manage para verificar que é SELECT.
Dica Profissional: Apenas Leitura para Múltiplas Bases de Dados
Pode conceder acesso apenas SELECT a múltiplas bases de dados para o mesmo utilizador. Utilize a modal Manage para adicionar cada base de dados individualmente com apenas SELECT marcado. Isto cria um único utilizador de relatórios que pode consultar várias bases de dados em segurança.