插件上线前的安全自检清单:权限/路由/菜单的黄金三查
每次发布新版本前我都会跑这套自检流程,分享下核心检查项:
权限校验必查项: 1. 所有涉及数据修改的POST路由必须添加权限校验 2. 检查管理界面capability是否过高(避免contributor能访问管理员功能) 3. 前端渲染按钮前做二次权限验证(防止仅靠CSS隐藏按钮)
路由陷阱排查: ```php // 错误示范:缺少nonce校验 add_action('wp_ajax_my_plugin', 'dangerous_callback'); // 正确姿势: add_action('wp_ajax_my_plugin', function() { check_ajax_referer('safe_action'); // 业务逻辑 }); ```
动态菜单常见坑: - 用current_user_can()控制菜单可见性 - 子菜单slug不要用动态生成(否则父级高亮会失效) - 多语言插件注意菜单文本域加载时机
最后记得在测试环境用不同角色账号完整走一遍核心流程,肉眼看到的未必是真实权限表现。遇到过最坑的情况是JS动态加载的功能模块绕过了后端校验,血泪教训。
最新打赏

