
双向TLS可让服务端验证客户端证书,但证书通过不等于获得WordPress所有操作权限。应把连接身份、证书生命周期和应用中的动作授权分开设计,尤其不能用一张共享证书代替全部用户审计。
先确定需要认证的客户端
mTLS常用于受控系统之间的接入,浏览器面向公众的网站未必适合强制要求所有访客证书。列出客户端、业务动作和接入层,确认TLS在哪个代理或服务器终止。不要仅因为插件支持API就默认必须采用mTLS。
设计证书身份与应用映射
证书可代表系统、设备或受控身份,如何对应到WordPress用户和能力需要明确规则。若前端代理传递认证结果,应限制可信来源并防止外部伪造相同头。应用仍要检查对象、动作和数据范围,而不是见到证书成功就全部放行。

安排签发续期和撤销
每个客户端尽量使用可区分的凭据,记录负责人、期限和撤销方式。客户端私钥不得放入公开代码包或普通交接文档。证书更换时同时核对调用方、信任链和允许列表,避免新证书签发成功却没有实际接入。
测试成功与拒绝两种边界
受控测试确认合格证书可到达约定接口,未知、过期或已撤销证书按策略被拒绝,应用低权限操作仍受限制。检查失败日志不泄露私钥或大量客户数据,确保运维有可用的应急恢复路径而不是永久跳过验证。
关键区别

mTLS认证:验证连接客户端;不是全部应用权限。
应用授权:限制对象和动作;仍需独立执行。
客户端私钥:证明受控身份;不可公开分发。
怎样确认处理到位
约定客户端通过正确证书调用所需功能,未授权证书和越权动作均被拒绝,续期与撤销流程能实际执行。
容易误判的边界
本篇不是把客户端证书当作WordPress角色替代,也不建议对普通公众咨询页面盲目加重认证门槛。
