Segurança e permissões
A segurança está no centro do Senso MCP. A solução utiliza os mecanismos do Joomla e não introduz nenhuma porta dos fundos: o assistente só pode fazer o que as suas permissões permitem.
Três camadas de controle
Cada chamada de ferramenta passa por três filtros sucessivos, que se acumulam:
- Os interruptores do componente — uma política global do site. Uma ferramenta desativada na administração do Senso MCP não existe para ninguém, independentemente da conta. O modo global de somente leitura também remove todas as ferramentas de escrita.
- A ACL do Joomla — as permissões da conta conectada. Cada ferramenta está vinculada a uma ação e a um componente do Joomla, exatamente como na administração.
- Os escopos OAuth — o perímetro concedido a uma determinada conexão. Durante a autorização, o usuário escolhe os domínios de ferramentas (conteúdo, mídia, menus…) que confiará a esse assistente e só pode marcar aqueles aos quais suas permissões do Joomla dão acesso.
Portanto, uma ferramenta só pode ser usada se estiver ativada no site, permitida pela ACL da conta e abrangida pelos escopos da conexão.
Alinhamento com a ACL do Joomla
As ferramentas MCP respeitam a ACL (lista de controle de acesso) do Joomla. Uma conta que não tem determinada permissão na administração também não a terá pelo MCP: a ferramenta não aparece na lista enviada ao assistente, e uma chamada forçada é recusada com a mensagem « Insufficient permission ». A correspondência segue o nome da ferramenta:
| Ferramentas | Ação do Joomla necessária | Exemplo |
|---|---|---|
create_* | core.create no componente | criar um artigo: core.create em com_content |
update_* | core.edit | modificar um módulo: core.edit em com_modules |
delete_* | core.delete | excluir uma categoria |
set_*_state, reorder_* | core.edit.state | publicar, despublicar, reordenar |
| leituras de extensões | core.manage em com_installer | listar as atualizações disponíveis |
| ferramentas de cache | core.manage em com_cache | limpar o cache |
Os grupos padrão do Joomla são suficientes: um Editor ou um Publicador só pode atuar sobre o conteúdo, enquanto um Administrador tem acesso à quase totalidade das ferramentas.
Consultas filtradas
O controle não se limita às operações de escrita. As pesquisas e consultas de artigos e categorias retornam apenas os itens publicados nos níveis de acesso da conta, exceto quando ela tem permissões de edição. Dados que revelam informações sensíveis são reservados às contas autorizadas: histórico de versões (rascunhos, lixeira), parâmetros dos módulos e configurações do YOOtheme (scripts, CSS).
Ferramentas reservadas ao Super Usuário
Algumas ferramentas têm um alcance que vai além do conteúdo e afeta o site inteiro. Assim como no Joomla, elas exigem a permissão global core.admin, ou seja, o grupo Super Usuários:
- instalar, atualizar ou desinstalar uma extensão;
- modificar um arquivo de tema;
- alterar as configurações do próprio Senso MCP.
Um Administrador não as vê. Essa escolha é deliberada: essas ações podem inserir código ou scripts em todas as páginas e exigem o mesmo nível de confiança que o acesso ao servidor.
O complemento YOOtheme Pro, por outro lado, não faz mais parte dessa lista: suas operações de escrita (páginas, temas, configurações) agora seguem a ACL do componente correspondente — com_content para as páginas e seus vínculos, com_templates para os temas, configurações e instantâneos — de modo que um Administrador possa operar o construtor sem uma conta de Super Usuário.
É preciso ser Super Usuário?
Não. Uma conta comum é suficiente para a imensa maioria dos usos. Escolha o grupo do Joomla que corresponde à necessidade: redação com o perfil Editor ou Publicador, gerenciamento cotidiano com o perfil Administrador, e reserve uma conta de Super Usuário apenas para operações com extensões e edição direta de arquivos de tema.
Para uma conexão por token de API do Joomla (em vez de OAuth), a conta também deve ter a permissão API Login (core.login.api) e não estar bloqueada.
Nunca exponha uma senha
O Senso MCP nunca transmite uma senha ao assistente. A autenticação usa tokens OAuth ou de API, e as ferramentas de gerenciamento de usuários não manipulam nem retornam senhas.
Escopo das ferramentas
Você mantém o controle do escopo: cada plugin ativado adiciona ferramentas, cada plugin desativado as remove e cada ferramenta tem seu próprio interruptor. As ferramentas se dividem entre leitura (consulta) e escrita (modificação) — ative apenas o que for necessário para o seu uso.
Boas práticas
- crie uma conta por uso (um assistente, uma automação), seguindo o princípio do menor privilégio;
- sempre disponibilize o site por HTTPS;
- ative apenas os plugins e as ferramentas realmente úteis;
- conceda a uma conexão somente os escopos de que ela precisa;
- revogue um acesso assim que ele não for mais necessário.