始终如一的专属身份
每位协作者均通过我们的身份层 Keycloak 以自己的身份登录。没有人会输入您的密码,没有人会共享浏览器会话,移除某人只需一次操作,而无需轮换密码并不顾一切地排查还有谁知道该密码。
委托访问
您可以引入开发人员、将账单交由您的会计处理、为客户提供仅供查看其自有网站的窗口,或者允许我们的支持团队查看问题。每一次授权都是一个具有明确权限的角色,限定于组织范围,在数据库中强制执行,并写入只允许追加的审计日志中。
共用同一个登录凭据容易导致账户访问权限出问题。在 Zinn Digital® 上,每个人都拥有独立身份,访问权限则是一种成员资格——包含用户、组织和角色——您可以单独授予、修改或撤回该资格。
每位协作者均通过我们的身份层 Keycloak 以自己的身份登录。没有人会输入您的密码,没有人会共享浏览器会话,移除某人只需一次操作,而无需轮换密码并不顾一切地排查还有谁知道该密码。
账户具有层级结构——分销商组织下设客户组织,客户组织下设网站。成员资格适用于一个组织及其下属的所有内容,因此您可以让代理客户全权管理其自己的组织,而绝不会暴露您的其他客户。
租户隔离并非应用程序代码中可能因缺陷而被跳过的筛选器。Postgres Row-Level Security 会将每个查询的作用域限定为调用方组织子树,因此超出您作用域的请求不会返回任何内容。
请求超出您范围的组织或站点时,API 将返回普通的未找到错误,而不是权限错误。权限错误会证实该记录的存在;而未找到则完全不会向局外人透露任何信息。
权限是细粒度的密钥——模块加上操作,例如 sites.restart 或 billing.refund——并通过角色进行打包。四种角色涵盖了实际团队所需的各种形式,而且每一种都是我们预置的数据,而不是深埋在代码中的逻辑。
完全控制:创建子组织、邀请和移除成员、更改角色、管理 API 密钥、创建、重启、清除、暂停和删除站点、处理账单与发票、提交工单并查看审计日志。保留给您自己的角色。
可查看组织、其成员和方案目录,并管理账单、支付方式及费用。无权创建、更改或删除任何单个站点 — 这正是外部簿记员应有的权限配置。
查看并创建网站、重启服务、清除缓存、管理 API 密钥以及处理工单。特意排除的内容:账单、发票、付款方式、成员管理、网站暂停以及网站删除。承包商可以在无法向您收费或销毁任何内容的情况下进行构建。
可以查看组织、其成员、其站点、其账单、方案目录、工单、翻译状态以及审计日志——但无法更改其中的任何内容。适用于希望掌握情况的客户、审计员或只需进行查看的相关利益方的理想权限。
仅当您委派的账户难以被盗用时,委派访问权限才是安全的。对于账户中的每个人,身份验证都会在所有层面上通过 Keycloak 进行。
技术支持工作有时需要查看您的账户内部。该访问权限受与其它所有内容相同的权限模型管理——工作人员仅隶属于员工组织,按部门划分并仅授予狭窄的权限。
员工划分为支持、账单与财务、滥用与信任及安全、销售、入职指导、工程与运维、营销和管理等团队。每个角色都会授予特定的模块和操作权限,因此专员只能看到其工作所需的那部分管理控制台,而看不到其余部分。
支持代表角色仅授予以下权限:查看客户、查看并回复工单、查看站点、重启站点以及清除其缓存。该角色不包含账单配置、退款、方案编辑以及集群管理权限。支持代表可执行的补救操作受该角色限制,而非取决于良好的初衷。
customer.impersonate 权限不属于 Manager 角色——它仅由 Super Admin 持有。当有会话代表您运行时,仪表盘会显示一个常驻的模拟横幅,从而绝不会对操作者是谁产生混淆。
所有特权和管理操作都会追加到仅允许追加的审计日志中,记录操作者、操作、目标、支持元数据、IP 地址和时间戳 — 在生产环境中按时间进行分区。所有者和只读成员可以自行查看其组织的日志。
员工执行敏感和破坏性操作之前可能需要进行二次验证或由两人审批,而且新增部门与角色只需配置而无需更改代码。
脚本、CI 流水线、CLI、Terraform 提供商和 AI 代理均采用与人类相同的权限模型进行身份验证——无需共享人类凭据,也无需在构建中粘贴长期密钥。
密钥属于组织,并具有与相同 RBAC 权限(只读、账单、配置)相关联的精细作用域。请为流水线授予其所需的小范围权限,而非成员的整个账户。
测试模式和正式运行模式的密钥是互相独立的,因此开发中的集成不会因意外或复制的环境变量而访问到生产环境的数据。
我们仅存储密钥的 SHA-256 哈希值和查找前缀——绝不存储原始密钥。您只会在创建时看到一次密钥。每个密钥都会记录其最后使用的时间,并且可以单独撤销,而不会影响其他任何内容。
我们的 MCP 服务器允许任何支持 MCP 的智能体使用自然语言管理您的托管服务,通过 OAuth 2.1 进行身份验证,并限定在您的组织和 RBAC 角色范围内,具有按工具可撤销的令牌、破坏性操作确认、支出上限以及完整的审计日志记录。
账户访问权限与服务器访问权限是不同的问题。站点级别的凭据在控制面板中管理,按最小权限原则授予,并经过隔离,确保协作者的 shell 仅限于单一站点。
独立操作员只需保留一个组织和一个所有者成员身份,并在承包商加入项目时为其添加开发者角色。项目结束时,该成员身份会被移除,其登录也会立即失效——无需轮换任何遗留的共享凭据。
代理机构使用组织树结构。每个客户都会获得自己的子组织,用于存放该客户的站点,并且客户自己的员工可以在其中获得成员资格——希望了解情况的利益相关者拥有只读权限,希望自主服务的客户则拥有所有者权限。您的员工在树结构中拥有更高层级的成员资格,可以查看整个投资组合;客户只能看到他们自己的分支,而行级安全性保证了这一点落到实处,而不仅仅是一句承诺。
分销商的运作方式相同,只是层级更高一级:分销商组织下设客户组织,每个客户组织都拥有自己的成员、账单视图和网站。相同的底层机制支持子账户、代理团队和分销商层级结构——它们之间不存在独立的、功能较弱的机制。
无需绑定信用卡的 14 天试用版包含所有功能。您无需填写付款信息即可注册,邀请同事加入,观察各个角色可以和无法访问的内容,并回看您自己的审计日志。
目前,成员资格的作用范围涵盖整个组织及其层级结构下的所有内容,因此隔离站点集的方法就是隔离组织——将这些站点放入它们自己的子组织中,并在该子组织中授予成员资格。对于代理商和转售商而言,这是一种清晰明了的模型,因为每个客户本身就希望拥有自己的边界。针对每个成员资格划分资源范围(即把单个成员资格限定在一个组织内的指定站点)是一项计划中的优化,而非当前可用的功能。
开发者角色不具备删除站点或暂停站点的权限——这些权限归所有者角色所有。该角色允许查看和创建站点、重启服务、清除缓存、管理 API 密钥以及处理工单。部署和推送到正式环境的权限同样不属于开发者授权范围,因此升级到生产环境的操作仍由账户所有者保留。请将其与暂存环境配合使用,以便从一开始就在非生产站点上进行构建工作。
这完全取决于员工角色,每个角色都是一组有限的权限密钥。例如,支持代理可以查看您的账户和站点,查看并回复您的工单,重启站点并清除其缓存——但无法触及账单配置、退款、方案或服务器集群。以客户身份登录是一项独立的权限,仅由 Super Admin 拥有,当发生这种情况时,控制面板会显示一个持久的模拟操作横幅。每次特权操作都会记录在审计日志中,包含操作者、操作、目标、IP 和时间戳,您可以自行查阅您组织的日志。
移除成员资格后,他们对该组织的访问权限即告终止——他们仍保留自己的身份,但在您的账户中没有角色,因此没有任何权限。API 密钥是单独撤销的,因此可以在不影响其他任何内容的情况下切断流水线密钥。如果您使用 SAML 单点登录,在您的身份提供商中取消配置即可集中处理登录操作。站点级凭据(例如 SSH 密钥)可在控制面板中撤销,且移除操作本身会被记录在审计日志中。
否 — 但有必要明确说明原因。API 密钥归组织所有,而非个人成员,并且它们带有与同一权限目录关联的独立细粒度范围。因此,无需向个人提供密钥,而是针对特定作业创建密钥,并赋予该作业所需的最窄范围,并在作业结束时吊销该密钥。系统仅存储机密的哈希值,且每个密钥都会记录上次使用的时间,以便轻松查找和停用未使用的密钥。
是的。我们的 MCP 服务器使用 OAuth 2.1 对代理进行身份验证,并通过针对每个工具的可撤销令牌将其限定在您的组织和 RBAC 角色范围内,从而使您能够授予特定功能而非泛泛的完全访问权限。破坏性操作需要确认,适用支出上限,且每项操作都会记录在与人类活动相同的审核日志中。
Postgres 行级安全性(Row-Level Security)在数据库本身内将查询范围限制在调用者所属的组织子树中,应用层过滤器则作为纵深防御,而非唯一的防线。超出范围的记录请求将返回“未找到”而非权限错误,因此不会泄露任何关于现有数据的信息。在服务器端,通过 CageFS 实现的按站点隔离将每个租户的 shell 和文件限制在他们自己的站点内。
是的。14天试用无需绑定信用卡——无需付款信息,无任何绑定限制——并且涵盖最多包含五个站点的 Footprint-Free 主机。这足以让您在做出承诺前邀请同事、分配角色,并确认各项边界符合您的要求。