Princípios
As ferramentas dos plug-ins podem acessar dados de usuários, APIs de terceiros e ações de escrita. Trate cada servidor MCP e componente de interface como software de produção:
- Privilégio mínimo: Solicite apenas os escopos, o acesso ao armazenamento e as permissões de rede de que você precisa.
- Consentimento explícito do usuário: Garanta que os usuários entendam quando estão vinculando contas ou concedendo acesso de escrita. Use as solicitações de confirmação do host para ações destrutivas.
- Defesa em profundidade: Pressuponha que injeções de prompt e entradas maliciosas chegarão ao seu servidor. Verifique todas as entradas e mantenha logs de auditoria.
Tratamento de dados
- Conteúdo estruturado: Inclua apenas os dados necessários para o prompt atual. Evite incorporar segredos ou tokens nas propriedades dos componentes.
- Armazenamento: Defina por quanto tempo você manterá os dados dos usuários e publique uma política de retenção. Respeite as solicitações de exclusão.
- Registro de logs: Oculte informações de identificação pessoal (PII) antes de gravá-las nos logs. Armazene IDs de correlação para depuração, mas evite armazenar o texto bruto dos prompts, a menos que seja necessário.
Injeção de prompt e ações de escrita
O modo de desenvolvedor habilita acesso completo ao MCP, incluindo ferramentas de escrita. Reduza os riscos com as seguintes medidas:
- Revise regularmente as descrições das ferramentas para desencorajar o uso indevido (“Não use para excluir registros”).
- Valide todas as entradas no servidor, mesmo que tenham sido fornecidas pelo modelo.
- Exija confirmação humana para operações irreversíveis.
Compartilhe seus melhores prompts de teste de injeção com a equipe de QA para que ela possa investigar pontos fracos desde o início.
Acesso à rede
Widgets são executados em um iframe isolado com uma política de segurança de conteúdo rigorosa.
Eles não podem acessar APIs privilegiadas do navegador, como window.alert,
window.prompt, window.confirm ou navigator.clipboard. A CSP controla
as requisições padrão de fetch. Frames aninhados não estão disponíveis por padrão; habilite
origens específicas nos metadados de CSP do recurso, como
_meta.ui.csp.frameDomains. Plug-ins podem incorporar páginas do próprio domínio registrável
de seu servidor MCP, incluindo editores e interfaces de administração existentes. Consulte
a política de iframes para saber mais sobre
a propriedade do domínio, as justificativas exigidas e os requisitos de revisão.
A CSP do widget restringe quais destinos de iframe podem ser carregados. Uma página incorporada
usa sua própria CSP; as listas de permissões connectDomains e resourceDomains do widget
não restringem as requisições de rede feitas dentro dessa página. Use origens específicas
para os iframes e inclua a experiência incorporada na sua revisão de segurança.
O código executado no servidor não tem restrições de rede além das impostas pelo ambiente de hospedagem. Siga as práticas recomendadas habituais para chamadas de saída (verificação de TLS, novas tentativas e tempos limite).
Autenticação e autorização
- Use fluxos de código de autorização OAuth 2.1 ao integrar contas externas.
Prefira Client ID Metadata Documents (CIMD) quando seu servidor de autorização
oferecer suporte a CIMD e o desenvolvedor do plug-in optar por essa opção. Use
nonepara a troca de tokens de clientes públicos ouprivate_key_jwtquando seu servidor de autorização exigir autenticação do cliente. Ofereça suporte a DCR quando o desenvolvedor do plug-in optar por ele ou quando CIMD não estiver disponível. - Verifique os escopos e aplique suas restrições em cada chamada de ferramenta. Retorne uma resposta
401para tokens expirados ou malformados. - Para a identidade integrada, evite armazenar segredos de longa duração; use o contexto de autenticação fornecido.
Preparação operacional
- Faça revisões de segurança antes do lançamento, especialmente se você lida com dados sujeitos a regulamentação.
- Monitore padrões anômalos de tráfego e configure alertas para erros recorrentes ou tentativas de autenticação malsucedidas.
- Mantenha as dependências de terceiros, as bibliotecas e as ferramentas de compilação com as correções em dia para reduzir os riscos na cadeia de suprimentos de software.
Segurança e privacidade são fundamentais para a confiança dos usuários. Incorpore-as aos seus fluxos de planejamento, implementação e implantação, em vez de deixá-las para depois.