安全

XinAdmin 基于 Laravel 的安全体系构建,实现了完整的认证、授权与 API 权限控制机制。

XinAdmin 的安全底层依托于 Laravel 框架,关于 Laravel 安全机制的更多细节,请参阅 Laravel 安全文档

安全架构总览

XinAdmin 的安全架构分为三层:

┌──────────────────────────────────────────────────────────┐
│  前端 UI 层                                               │
│  AuthButton / useAuth / accessName                       │
│  根据用户权限数组控制 UI 元素显示/隐藏                         │
└────────────────────────┬─────────────────────────────────┘
                         │  Bearer Token (Authorization Header)
┌────────────────────────▼─────────────────────────────────┐
│  API 认证层                                               │
│  Laravel Sanctum + AuthGuardMiddleware                   │
│  验证 Token 有效性、令牌类型匹配                              │
└────────────────────────┬─────────────────────────────────┘

┌────────────────────────▼─────────────────────────────────┐
│  权限校验层                                                │
│  Sanctum CheckAbilities                                  │
│  校验 Token 的 abilities 数组中是否包含路由所需的权限 key        │
└──────────────────────────────────────────────────────────┘

核心特性

特性说明
Token 认证Laravel Sanctum Personal Access Token
RBAC 授权用户 → 角色 → 权限 三层模型
超级管理员用户 ID=1 硬编码,绕过所有权限检查
注解路由PHP 8 注解自动注册路由和权限中间件
前端权限控制AuthButton / useAuth / accessName
登录审计记录登录 IP、浏览器、地理位置
请求校验BaseFormRequest 统一表单验证

Laravel 安全参考

XinAdmin 的安全机制建立在 Laravel 框架之上,以下文档提供了更深入的安全知识: