Appearance
Everything Claude Code 的 Laravel Security Skill 是一套专为 AI 编程助手(如 Claude Code、Cursor 等)设计的 Laravel 安全最佳实践自动化方案。它覆盖认证(authn)、授权(authz)、CSRF 防护、Mass Assignment 防御、文件上传、密钥管理、安全头、CORS、日志脱敏、依赖安全、签名 URL 等关键环节,帮助开发者在实际项目中系统性防御常见漏洞,提升生产环境的安全基线。
Everything Claude Code Laravel Security Skill:authn/authz、CSRF、Mass Assignment 与安全部署配置
在现代 Laravel 项目开发中,安全始终是不可忽视的底线。传统做法往往依赖人工查漏补缺,容易遗漏细节,尤其在团队协作和自动化生成代码(如通过 Claude Code、Codex、Cursor 等 AI 编程助手)时更易暴露风险。Everything Claude Code 的 laravel-security Skill 正是为此而生——它将 Laravel 安全最佳实践固化为可复用、可自动触发的 Skill,贯穿从开发到部署的全流程,极大降低因配置疏漏或实现不当导致的安全事故。
1. 适用场景与自动激活时机
laravel-security Skill 会在以下场景自动检测并建议或直接应用安全措施:
- 新增认证(authn)或授权(authz)流程时
- 设计/修改 API 端点、表单、文件上传、用户输入处理时
- 配置或调整环境变量、密钥、Session、Cookie、CORS、日志等安全相关参数时
- 生产环境部署、CI/CD Pipeline、依赖升级或安全审计时
开发者也可通过 Everything Claude Code 快速上手指南 配置自动化 Hook,让 Skill 在关键代码变更、合并请求、发布前自动触发。
2. 实战操作流程 Step by Step
Step 1:认证与授权(authn/authz)安全加固
- API 认证:Skill 自动建议使用 Laravel Sanctum/Passport,推荐短时 token+refresh 流程,并在路由中加上
auth:sanctum中间件。
php
Route::middleware('auth:sanctum')->get('/me', function (Request $request) {
return $request->user();
});- 授权策略:Skill 检查控制器和服务层是否调用
$this->authorize()或使用 policy middleware,防止越权访问。
php
$this->authorize('update', $project);php
Route::put('/projects/{project}', [ProjectController::class, 'update'])
->middleware(['auth:sanctum', 'can:update,project']);Step 2:CSRF 防护与输入校验
- Skill 强制检查
VerifyCsrfToken中间件是否启用,表单是否包含@csrf,SPA 场景下是否正确配置 XSRF token。 - 自动生成/修正 Form Request 验证器,确保所有输入都经过严格校验与类型检查。
php
final class UploadInvoiceRequest extends FormRequest
{
public function authorize(): bool
{
return (bool) $this->user()?->can('upload-invoice');
}
public function rules(): array
{
return [
'invoice' => ['required', 'file', 'mimes:pdf', 'max:5120'],
];
}
}Step 3:Mass Assignment 防御与数据安全
- Skill 检查模型是否正确设置
$fillable或$guarded,禁止使用Model::unguard(),建议采用 DTO 或显式属性赋值。 - 对敏感字段自动建议加密 cast:
php
protected $casts = [
'api_token' => 'encrypted',
];Step 4:文件上传、依赖安全与密钥管理
- Skill 自动检测上传接口,强制校验文件类型、大小、扩展名,并建议将上传存储于非公开路径。
- 检查
.env、config是否泄露密钥,建议使用环境变量和密钥管理工具。 - 自动集成
composer audit,定期扫描依赖安全。
Step 5:安全部署配置与生产环境加固
- Skill 检查并修正如下关键配置:
APP_DEBUG=false(生产环境禁用调试)APP_KEY设置与轮换SESSION_SECURE_COOKIE=true、SESSION_HTTP_ONLY=true、SESSION_SAME_SITE=strict- 可信代理配置,强制 HTTPS 检测
- 自动生成安全头部中间件(CSP、HSTS、X-Frame-Options 等):
php
final class SecurityHeaders
{
public function handle(Request $request, \Closure $next): Response
{
$response = $next($request);
$response->headers->add([
'Content-Security-Policy' => "default-src 'self'",
'Strict-Transport-Security' => 'max-age=31536000',
'X-Frame-Options' => 'DENY',
'X-Content-Type-Options' => 'nosniff',
'Referrer-Policy' => 'no-referrer',
]);
return $response;
}
}- CORS 配置自动收敛到最小可信域,避免通配符暴露:
php
return [
'allowed_origins' => ['https://app.example.com'],
// ...
];Step 6:日志脱敏与敏感信息保护
- Skill 自动检测日志输出,防止记录密码、token、卡号等敏感信息,建议使用
[REDACTED]标记。
php
Log::info('User updated profile', [
'user_id' => $user->id,
'email' => '[REDACTED]',
'token' => '[REDACTED]',
]);Step 7:签名 URL 与临时访问控制
- Skill 建议使用签名路由生成临时、防篡改下载/操作链接,并自动加上
signed中间件。
php
$url = URL::temporarySignedRoute(
'downloads.invoice',
now()->addMinutes(15),
['invoice' => $invoice->id]
);3. 输出示例
- 自动修复未加密的敏感字段,生成加密 cast
- 检测到表单缺失
@csrf,自动补全 - 发现 API 路由未加
auth:sanctum,自动插入中间件 - 生产环境自动检查并修正
APP_DEBUG、SESSION_*配置 - 检测到日志输出敏感字段,建议脱敏处理
4. 常见配套 Agent 与 Skill 协作
- 与 Code Reviewer Agent、Security Reviewer Agent 联动,自动审查和修复安全隐患
- 可结合 Laravel Verification Skill 在发布前执行全量安全校验
- 与 Hooks 自动化体系 集成,实现 PreToolUse/PostToolUse 阶段的安全检查
- 搭配 Security Scan Skill 定期扫描 .claude/ 目录和依赖安全
更多 Skill 协作模式详见 Everything Claude Code 完全指南。
FAQ
Q: 这个 Skill 能自动修复哪些安全问题?
A: 能自动检测并修复认证/授权配置、CSRF 漏洞、Mass Assignment、敏感字段未加密、文件上传不安全、日志泄露、依赖漏洞等常见问题。
Q: Skill 会影响开发效率吗?
A: 不会。Skill 以建议和自动修复为主,减少人工排查和重复劳动,提升安全基线的同时保障开发节奏。
Q: 如何与团队协作或 CI/CD 集成?
A: 可通过 Hooks、Agent 配置在 PR、合并、发布等关键节点自动触发 Skill,实现团队级安全自动化。