
每一个自研认证系统最初都只是一小段代码。真正麻烦从上线后开始,每一个小决策都会悄然固化成整个产品默认的身份模型。
邮箱、密码、加密存储,登录时比对。简单,搞定。
什么算作用户。归属于哪个组织。哪个会话还可信。如何收回访问权限。
纸面上换个登录页,代码里却是重新搭一套身份基石。
它能让用户多年顺利登录,毫无事故。直到一项业务变化,让“够用”一夜之间变成“卡脖子”。以下三种变化,几乎每个做大规模的产品都会遇到。

第一个大客户签约,采购方要求用自己的 Entra 或 Google Workspace 登录。之后还要支持 SAML 和 OIDC,因为下一个客户用的是别的系统。每家客户的身份集成都不一样,几乎所有工作都不能复用。

按组织、按产品分割,甚至是收购继承下来的。“统一身份”听起来像是个功能,但代码层面你得重新定义什么是同一个用户和同一个组织。

用户不再只是通过浏览器登录。AI 助理、MCP 服务器、命令行都要代表某个用户行动。而你的认证系统只会让人登上一个网页。

第一版只要几个工程师和几周时间,就能上线。之后则每年都要投入本该用于核心产品的时间来“喂养”它。
你永远不会收到一张“认证系统服务费”发票。
关键知识只在某个人头脑里,不在文档中。
没有客户会因为你自写 OAuth 服务器而多付一分钱。
主流认证方案都能覆盖功能需求:SSO、MFA、组织、统一登录、代理访问。真正的区别在于你能否自由迁移。别费劲从你自己的几千行代码里爬出来,又被套牢进别家的平台。