1.7 KiB
1.7 KiB
Segurança e Permissões do Appwrite
As coleções do projeto seguem uma política de Row-Level Security (RLS) para proteger os dados dos usuários e os registros de auditoria.
Princípios gerais
- Cada documento pertence a um usuário autenticado, identificado pelo
userIdarmazenado no documento. - Operações de leitura e gravação são restritas ao proprietário do documento (role
member). - Logs de auditoria globais só podem ser consultados por usuários com a role
admin.
Regras por coleção
cloud_accounts
- Leitura: apenas o usuário que criou o documento (role
member). - Criação: apenas usuários autenticados.
- Atualização/Exclusão: somente o proprietário do documento.
projects
- Leitura: restrita ao proprietário do documento.
- Criação: usuários autenticados podem criar seus próprios registros.
- Atualização/Exclusão: apenas o proprietário do documento.
audit_logs
- Leitura: exclusiva para usuários com role
admin(para auditoria global). - Criação: serviços e funções podem registrar ações em nome dos usuários; cada entrada mantém o
userIdresponsável. - Atualização/Exclusão: não permitidas para usuários finais; apenas processos administrativos podem gerenciar retenção.
Considerações adicionais
- Tokens e chaves sensíveis (GitHub, Cloudflare) devem ser armazenados em
cloud_accountse nunca enviados ao frontend. - Funções Cloud (como as de proxy) devem validar o
userIdassociado ao documento antes de usar qualquer chave. - Revogue ou rotacione chaves comprometidas removendo ou atualizando o documento correspondente na coleção.