security 分类归档

共 69 篇文章 · 返回首页

【操作系统百科】FreeBSD 与 OpenBSD 的不同选择

FreeBSD 和 OpenBSD 从同一个 BSD 根分出两条相反的路径:一个追求通用性能与广泛生态,一个追求安全正确性与代码洁癖。本文从安全模型、文件系统(ZFS vs FFS)、网络栈(pf vs pf 正统)、虚拟化(jail/bhyve vs vmm)、社区治理、包管理、硬件支持到生产案例做逐项对比,给出选型框架和不该选 BSD 的典型场景。

【身份与访问控制工程】SCIM 与账号生命周期:开通、变更、离职自动化

SSO 只解决认证,SCIM 解决账号的生命周期管理。但 SCIM 2.0 的实现远不是调几个 REST API 那么简单:User/Group schema 的映射、Delta vs Full sync 的同步策略、Patch 操作语义,每个环节都有坑。本文从账号生命周期的四个关键事件出发,拆解 SCIM 2.0 的核心协议、同步模式、Schema 扩展,以及与企业 IdP(Azure AD、Okta)对接的实际工程经验。

【身份与访问控制工程】IAM 全景:为什么这是高价值赛道

从 2020 年 SolarWinds 到 2024 年 Okta 支持系统泄露,身份基础设施的安全失败反复证明一件事:IAM 不是 IT 支撑系统,而是安全架构的承重墙。本文建立现代 IAM 的全景地图——从认证协议、令牌体系、权限模型到身份治理与平台选型,给出 5 个贯穿全系列的核心问题。

【身份与访问控制工程】企业单点登录:OIDC 与现代 SSO

OIDC 是当下企业 SSO 的事实标准,但大多数实现只用了它 20% 的规范。本文从 OIDC 核心规范出发,拆解 Authorization Code Flow + PKCE 的完整交互、ID Token 的验证规则、Discovery 与 Dynamic Registration 的互操作性机制,以及 RP-Initiated Logout 和 Session Management 的工程实现细节。

【身份与访问控制工程】OAuth 2.1 与 PKCE:现代授权主路径

OAuth 2.1 不是新协议,而是对 OAuth 2.0 的安全加固:废除 Implicit Grant 和 Resource Owner Password Grant,强制 PKCE 用于所有使用授权码模式的客户端,要求精确 redirect_uri 比对。本文从 PKCE 的密码学动机出发,拆解 OAuth 2.1 的授权码流程完整交互、Refresh Token 轮换与发送者约束、DPoP 令牌绑定,以及 DCR (Dynamic Client Registration) 和 RAR (Rich Authorization Requests) 的实际应用。

【身份与访问控制工程】SAML 还值得学吗:企业遗留 SSO 的现实世界

2026 年了,SAML 2.0 这个诞生于 2005 年的标准在 OIDC 的压力下看似日薄西山,但全球超过 70% 的企业 SaaS 产品仍然把 SAML SSO 放在 Enterprise 定价方案的第一行。本文拆解 SAML 2.0 的核心协议模型、SP-Initiated 和 IdP-Initiated 两种 SSO 流程、NameID 的选择策略、SAML Metadata 的互操作性工程,以及 SAML 和 OIDC 在实际企业客户场景中的选型逻辑。

【身份与访问控制工程】JWT、JWS、JWE、JWKS 一次讲透

JWT 不等于 JWS。JWS 是签名格式,JWE 是加密格式,JWK 是密钥表示,JWKS 是密钥集合——这四个规范共同构成了 JOSE(JSON Object Signing and Encryption)技术族。本文从 JOSE 体系全景出发,逐层拆解 JWT 的三段式结构、JWS 的签名算法选择(从 HS256 到 EdDSA 的选择逻辑)、JWE 的密钥加密与内容加密双层模型、JWKS 的密钥轮换与缓存策略。

【身份与访问控制工程】Session、Refresh Token 与吊销体系

JWT 的无状态设计带来了可扩展性,但让令牌吊销变成了系统性问题——签出去的 JWT 在到期之前全是活令牌。Refresh Token Rotation、Token Introspection、基于事件的吊销通知、撤销列表——这些机制构成了身份系统的'紧急刹车',各自的成本、延迟和覆盖范围完全不同。本文拆解四种吊销机制的工程权衡。

【身份与访问控制工程】MFA、TOTP、WebAuthn、Passkey 工程实践

MFA 从'额外的一道验证码'演变为以 WebAuthn/Passkey 为代表的无密码认证体系,但工程落地不是'加个 TOTP 就完事'——TOTP 的种子存储安全、WebAuthn 的 attestation 与 origin 绑定、Passkey 的跨设备同步与 recover 流程、以及各方案在用户流失率和安全强度之间的现实权衡,每一项都影响架构决策。

【身份与访问控制工程】风险感知认证:设备信任、异常登录与挑战升级

MFA 是固定策略——启用后每个人每次登录都要输入验证码。风险感知认证(Adaptive/Risk-based Authentication)让认证强度随风险动态调整:从新设备、新位置触发额外验证,到持续的行为分析和会话风险评估。本文拆解风险引擎的信号模型、设备指纹的实现选型、挑战升级的 UX 设计,以及硅谷大厂的实践对比。

【身份与访问控制工程】服务身份:mTLS、SPIFFE/SPIRE 与 Workload Identity

前 9 篇讨论的都是'人'的身份——用户怎么登录、怎么验证。但微服务世界中,80% 的 API 调用是服务之间的。服务身份(Workload Identity)是整个 IAM 体系的另一半:mTLS 解决'传输层你是谁',SPIFFE/SPIRE 解决'在平台层你是谁且怎么证明',JWT Profile for OAuth 解决'我怎么拿到一个服务身份的 Token'。本文从这三条线拆解服务身份的工程实现。

【身份与访问控制工程】RBAC、ABAC、ReBAC:权限模型怎么选

RBAC 简单但会角色爆炸,ABAC 灵活但策略管理失控时更可怕,ReBAC 表达力强但引入了图遍历的性能约束。三种模型不是'选一个升级另一个'的线性关系,而是在表达能力、管理成本和性能三者之间做工程权衡。本文从每种模型的本质数据结构出发,拆解选型框架。

【身份与访问控制工程】Zanzibar 风格权限系统:Google 的全球授权引擎

Google Zanzibar 论文在 2019 年发布后,引发了开源授权系统的一波重新设计:Auth0 FGA、SpiceDB、Permify、Ory Keto——全都基于 Zanzibar 的'关系图+命名空间配置'模型。但论文本身只讲了 What,没深入 Why。本文从 Zanzibar 的 relation tuple 模型、namespace config 的语义、consistency 模型(Zookie)和工程权衡出发,拆解为什么 Zanzibar 的设计决策是这样的,以及你自己实现时要面对什么。

【身份与访问控制工程】OPA、Cedar 与策略引擎落地

OPA 是 CNCF 的策略引擎标准答案,Rego 是它的策略语言;Cedar 是 AWS 开源的新竞争者,基于 Rust 的 WASM 编译执行、语法更接近 SQL。两者在架构模式(sidecar vs 中心化)、策略语言设计哲学和性能特征上有根本差异。本文从策略引擎的架构模式出发,拆解 OPA Rego 的核心语义与性能限制、Cedar 的设计取舍,以及策略即代码(Policy as Code)在 CI/CD 中的落地。

【身份与访问控制工程】B2B SaaS 多租户权限设计

多租户权限系统是 IAM 中工程复杂度最高的场景之一——每个租户想要自己的角色、自己的组织树、自己的审批流和完全隔离的数据。这四种需求会互相冲突。本文从租户隔离模型出发,拆解四层权限架构、租户级 RBAC 的扩展方案、组织树与数据权限的联动,以及跨租户授权(如第三方服务商访问客户数据)的架构设计。

【身份与访问控制工程】API Gateway、BFF 与边界认证授权

API Gateway 是 IAM 的边界执行点——OAuth Token 的验证、Rate Limit 的绑定、请求级的授权决策都发生在这里。但网关层的认证授权逻辑应该做多厚?BFF(Backend for Frontend)模式把 Session 管理和 Token 兑换从浏览器移回后端后,网关的角色有什么变化?本文从网关层的认证授权架构出发,拆解三种部署模式及其安全边界。

【身份与访问控制工程】Keycloak 工程拆解:Realm、Client、Flow 与扩展机制

Keycloak 是 CNCF Incubating 项目中最成熟的 IAM 平台,也是自建身份系统的首选开源方案。但它不是'下个 JAR 跑起来就行'的简单软件——Realm 的隔离模型、Authentication Flow 的执行引擎、Client Scope 和 Protocol Mapper 的职责分离、自定义 SPI 扩展点——理解这些内部架构才能做好生产部署。本文从 Keycloak 的核心概念模型出发,拆解其内部执行路径和扩展机制。

【身份与访问控制工程】自建还是采购:Keycloak、Auth0、Entra、Okta 对比

自建 Keycloak 省下的 license 费用,会在运维、高可用、多活、定制开发和知识积累上还回去。采购 Auth0/Okta/Entra 省下的运维成本,会在 license 账单、供应商锁定和功能黑盒上付出代价。本文不是产品推荐,而是一个工程决策框架——在什么规模、什么场景下,哪种选择的总成本(TCO)合理。

【身份与访问控制工程】CIAM 架构:面向 B2B / B2C SaaS 的身份平台

CIAM(Customer IAM)和 Workforce IAM 的架构差异不只是'人多了一些'——CIAM 面向的是百万到亿级的用户量、自注册到注销的完整消费者生命周期、GDPR/CCPA 的同意管理、跨设备跨渠道的统一身份,以及与营销和 CRM 系统的数据集成。本文从 CIAM 与 Workforce IAM 的本质差异出发,拆解 CIAM 的注册漏斗、渐进式画像、同意管理和 B2B/B2C 混合架构。

【身份与访问控制工程】PAM、IGA 与审计合规

PAM(Privileged Access Management)管理的是'有钥匙的人'——域管理员、数据库 DBA、云基础设施 root 账号。IGA(Identity Governance and Administration)管理的是'谁应该有什么访问权限'——访问认证(Access Certification)、权限审计(SoD 分离)、自动化开通。两者加上审计日志构成安全合规的三足鼎立。本文拆解 PAM 的会话劫持与审计、IGA 的访问认证与角色挖掘,以及审计日志的不可篡改设计。

【身份与访问控制工程】身份系统迁移与事故响应

身份系统迁移是整个 IAM 领域中风险最高、回滚最难的操作——用户密码哈希不可逆迁移、MFA 种子不可迁移、WebAuthn credential 绑定到特定 RP ID、数百万活跃 Session 的中断窗口——任何一个环节出错都意味着用户无法登录。本文从迁移的四种策略出发,拆解密码哈希桥接、MFA 重新注册编排、Session 连续性保持、灰度切流的架构设计,以及身份安全事故的应急响应流程。

【零信任安全架构】NIST SP 800-207 架构深度拆解:不只是 7 条原则

NIST SP 800-207 给了零信任最权威的定义,但大多数讨论只复述了 7 条原则。本文拆解 NIST 文档的完整架构模型:PEP、PDP、Policy Engine、Policy Administrator 的分工与交互协议、信任算法的三种模型、以及 NIST 有意留白留给实现者的工程决策。

【零信任安全架构】BeyondCorp 六篇论文全景:Google 怎么把零信任从概念变成全公司现实

Google 的 BeyondCorp 是最早把零信任从概念推到全公司规模的工程实践。从 2014 年第一篇论文到 2018 年第六篇,这六篇论文记录了每一次架构决策的动机、执行过程和后果。本文不是要点复述,而是把六篇论文当工程复盘来读。

【零信任安全架构】身份感知代理:Google IAP、Pomerium 与零信任的入口

身份感知代理(IAP)是零信任架构中用户进入企业资源的唯一入口——它取代了 VPN 的'拨入内网'模型,把每个 HTTP 请求的认证和授权检查放在资源前面。本文拆解 IAP 协议层的完整请求流、JWT 验证的严格性要求、Header Injection 的安全陷阱,以及 Pomerium/oauth2-proxy/Cloudflare Access 的实现差异。

【零信任安全架构】设备姿态与远程证明:TPM、osquery 和信任分数

零信任的'持续验证'从设备姿态开始——TPM 2.0 的远程证明提供硬件级可信测量,osquery 采集操作系统级安全信号,信任引擎把这些信号综合成一个可以写入策略引擎的分数。本文拆解 TPM 2.0 PCR 语义、AIK 证明协议、设备信任分数的计算与衰减模型,以及设备姿态系统的运维陷阱。

【零信任安全架构】持续验证 vs 一次性认证:信号流、会话风险和策略降级

零信任把认证从'登录时一次'变成了'整个会话期间的持续评估'。但'持续'在工程中既不可能是'每个请求都完整评估',也不应该是'会话期间不重新评估'。本文回答持续验证的工程实现:什么频率叫持续、当风险信号变化时如何降级或撤销现有会话、以及 OpenID CAEP 协议的草案现状。

【零信任安全架构】零信任策略引擎:OPA/Rego 与 Cedar 在 ZT 中的落地

在零信任架构中,策略引擎(PDP)是每次访问决策的裁判——不仅要回答'这个人能不能访问这个资源',还要回答'在当前设备姿态、地理位置、时间上下文下,这个人能不能访问这个资源'。本文聚焦策略引擎在零信任场景中的额外要求:多维输入的协同、策略的实时更新、冲突检测和策略即代码的 CI/CD。

【零信任安全架构】微分段深度拆解:从 VLAN 到 eBPF 的访问控制演化

微分段是零信任在网络层的核心机制——从传统 VLAN 的广播域隔离,到 Kubernetes NetworkPolicy 的 IP 级别过滤,再到 Cilium 基于身份的 eBPF 执行和 Istio 的 L7 策略。本文拆解四层微分段技术的实现原理、性能差异和适用场景,以及从'全通'到'全白名单'的策略制定流程。

【零信任安全架构】mTLS 大规模部署的工程现实:联邦、故障排查与根 CA 轮换

mTLS 是零信任服务间通信的基石,但从'单集群内启用 mTLS'到'全公司多集群、混合云的 mTLS',中间隔着 SPIRE 联邦、跨信任域证书验证、mTLS 握手并发瓶颈、连接池协议兼容性和故障排查等工程问题。本文不重复 SPIFFE/SPIRE 基础,而是聚焦大规模部署中才暴露的问题。

【零信任安全架构】软件定义边界与 ZTNA:VPN 替代方案的协议与产品对比

Zero Trust Network Access(ZTNA)是零信任架构中直接替代 VPN 的组件——它把'拨入内网'变成'按应用授权'。本文拆解 SDP 协议的三个阶段、SPA 单包授权的'端口隐藏'机制、Agent-based vs Agentless ZTNA 的实现差异,以及自建 ZTNA 技术栈的可行性。

【零信任安全架构】零信任数据安全:加密、分类与数据访问治理

零信任通常被讨论在网络和身份层面,但数据层才是攻击者的最终目标。当网络控制和身份验证都失败时,数据本身的加密和访问治理是最后一道防线。本文讨论应用层加密 vs 存储层加密、数据分类标签在授权决策中的应用,以及密钥管理的零信任化。

【零信任安全架构】SaaS 与云原生的零信任:CASB、CSPM 和 Kubernetes 超网络策略

企业的工作负载已经从数据中心移到了 SaaS 和公有云——Google Workspace、Office 365、Salesforce、GitHub 是新的'内网'。零信任在 SaaS 和云原生环境中的实现方式与传统数据中心完全不同。本文拆解 CASB 的零信任化、SSPM/CSPM 的配置审计和多云 IAM 的最小权限实践。

【零信任安全架构】零信任与软件供应链:SLSA、Sigstore 和构建管道的身份

SolarWinds 攻击告诉世界一件事:如果你的 CI/CD 管道被攻破,攻击者不需要攻破生产系统——在构建时注入后门就够了。本文拆解 SLSA 框架的四级成熟度、Sigstore 的无密钥签名机制、以及 SPIFFE/SPIRE 如何为 CI/CD 管道提供短有效期身份。

【零信任安全架构】CISA 零信任成熟度模型:从传统到最优化的四阶段全景评估

零信任不是 binary 的'做完/没做完'。CISA 的零信任成熟度模型(ZTMM v2.0)将零信任分解为五个支柱,每个支柱有四个成熟度等级。本文拆解 ZTMM 的评估框架,以及每个支柱从初级到高级的工程跳跃具体意味着什么。

【零信任安全架构】零信任迁移的工程策略:棕地改造、遗留系统适配与渐进式切流

零信任最重要的工程问题不是'采购什么产品',而是'怎么迁移'。已有 500 个遗留系统、数十个无法停机的关键业务、几千台未被管理的设备——本文拆解四种遗留系统升级策略、渐进式切流的流量控制与回滚条件,以及迁移中的人力成本和组织阻力。

【零信任安全架构】零信任可观测性与 SIEM 集成:日志、检测与自动化响应

零信任架构生成的安全日志比传统架构多一个数量级——每个访问代理的决策、每次 mTLS 握手、每条微分段策略的 allow/deny 事件。如果没有配套的日志聚合、异常检测和自动化响应,零信任就是一个'黑盒式拒绝'系统。本文拆解零信任的三层日志和特有的检测规则。

【零信任安全架构】零信任的新兴前沿:AI Agent 身份、边缘计算和量子后的证书

零信任的现状主要服务于'人访问应用'和'服务调用服务'两种模式。但三个新兴场景正在挑战零信任的基本假设:AI Agent 的自主操作、边缘计算的间歇性连接、以及 PQC 对 X.509 证书和 mTLS 握手的冲击。本文展示工程挑战和当前最优实践,不假装有成熟的标准答案。

零信任安全架构深度系列

零信任是 IAM 的自然延伸——当身份变成新边界,VPN 的'拨入即信任'模型必须被'永不信任、始终验证'取代。本系列从 NIST SP 800-207 规范、Google BeyondCorp 六篇论文、SPIFFE/SPIRE 联邦到微分段、持续验证、ZTNA 和零信任迁移的工程策略,系统拆解零信任的每一种组件和每一步实施。

【从零造容器】Seccomp-BPF 与 Capabilities:容器安全的两道防线

你的容器能调用 reboot()。是的,现在就能。除非有人拦住它。Capabilities 拆分 root 权限,Seccomp-BPF 过滤系统调用——两道防线,缺一不可。本文用 C 代码拆解这两套机制,看看 Docker 到底替你挡住了什么。

全同态加密(FHE)技术详解

在数据为王的时代,数据隐私和安全变得至关重要。我们希望在利用数据带来价值的同时,保护其不被泄露。传统的数据加密技术(如 AES、RSA)可以有效地保护静态存储和传输中的数据,但一旦需要对数据进行计算或处理,就必须先解密。解密后的数据以明文形式暴露在内存中,极易受到攻击,这在云计算等第三方计算环境中构成了巨大的安全风险。

OPAQUE(RFC 9807)详解:从协议原理到工程落地

在传统的用户名 + 密码登录系统中,服务器通常要么直接保存口令派生值(如 salt + hash(password)),要么依赖 TLS+密码的组合来实现认证。一旦服务器数据库被攻破,攻击者就可以对这些口令派生值做离线暴力破解,且整个系统的安全性高度依赖 TLS 与密码派生方案的组合是否正确实现。OPAQUE(The…