Skip to content

Security & Isolation

Security is not an afterthought in Kizuna; it is the foundation. Given the sensitivity of automation workflows (which often contain API keys), we implement defense-in-depth strategies.

All sensitive credentials stored in the database are encrypted using AES-256-GCM.

  • n8n API Keys
  • GitHub Personal Access Tokens

The encryption key is defined by N8N_ENCRYPTION_KEY in your environment variables. Without this key, the data in the database is unreadable.

Kizuna allows for a multi-user environment where each user operates within their own isolated workspace.

Each user has full ownership and control over the servers, workflows, and credentials they add. Data is isolated by user ID at the database level using Row Level Security (RLS). One user cannot see or modify another user’s servers.

RoleOwn ResourcesSystem Plugins
AdminFull AccessManage (Enable/Disable)
UserFull AccessView Only
  • User: Can manage their own servers, workflows, and favorites. Cannot modify system-wide settings like Plugins.
  • Admin: Has all the rights of a User, plus the ability to enable/disable global plugins for the installation.

Server-Side Request Forgery (SSRF) is a common vulnerability in tools that make HTTP requests to user-defined URLs. Kizuna includes a custom SSRF validator that:

  1. Resolves the DNS of the provided n8n URL.
  2. Checks if the IP belongs to a private range (unless explicitly allowed for local dev).
  3. Blocks requests to internal metadata services (e.g., AWS EC2 metadata).

The codebase has undergone a comprehensive internal security review, achieving a score of 9.2/10.