## 安装与初始化


composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate

中间件与 guard 配置:在 `config/sanctum.php` 与 `config/auth.php` 按需设置,API 路由使用 `auth:sanctum`。


## 令牌签发(可验证)


$token = $user->createToken('api', ['orders:read', 'orders:write'])->plainTextToken;

通过 `curl` 验证:


curl -H "Authorization: Bearer <token>" https://api.example.com/orders

## RBAC:Gate/Policy 与缓存


  • 定义资源操作的 Policy,并在控制器中调用 `this->authorize('view', $order)`。
  • 将角色-权限映射缓存到 Redis(过期与失效策略谨慎设计)。

## 路由与配置缓存


php artisan route:cache
php artisan config:cache

注意:路由缓存要求移除闭包路由;权限中间件与策略不应依赖运行时可变的未缓存配置。


## 回归与监控


  • 记录认证失败率与权限拒绝分布,评估策略覆盖与异常入口。
  • 压测关键授权接口,建立 `RPS` 与 `p95/p99` 基线。

## 注意事项


  • SPA 场景需配置 `stateful` 域名与 CSRF;API 场景使用 Bearer Token。
  • 对长生命周期令牌设置细粒度能力列表,避免过度授权。

## 结语


以 Sanctum 的轻量认证结合 RBAC 的策略治理,并用缓存与路由编译优化热点路径,能够在保持安全性的同时保证吞吐与可维护性。



点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部