Laravel 8的api.php默认Sanctum路由是否可以安全删除?
Laravel 8 默认Sanctum路由相关问题解答
该默认路由的作用
你看到的这段代码:
Route::middleware('auth:sanctum')->get('/user', function (Request $request) { return $request->user(); });
是Laravel官方为Sanctum身份认证组件预设的工具接口,作用是返回当前已通过Sanctum认证的登录用户自身的基础数据。
该路由默认挂载了auth:sanctum中间件,有严格的身份校验:未携带有效Sanctum令牌的请求访问时,会直接返回401未授权错误,不会返回任何用户相关数据;只有持有合法令牌的用户才能拿到自己的信息,无法获取其他用户的内容。
是否需要删除?删除是否安全?
你完全可以根据自身需求决定是否删除:
- 如果你不会用到Sanctum做身份认证,也不需要获取当前登录用户信息的接口,直接删除即可,没有任何副作用,完全不会影响你后续开发自定义POST接口的正常运行
- 删除操作是100%安全的,这只是官方提供的示例路由,不属于框架运行必须依赖的核心代码
不删除是否有安全风险?
默认配置下不删除不存在安全隐患:
- 匿名请求无法获取任何有效数据,只会收到401响应
- 已认证用户只能拿到自己的信息,不存在越权访问漏洞
- 就算被恶意接口扫描,也不会泄露系统或用户的敏感信息
如果后续你用到Sanctum组件但不想用默认的返回逻辑,也可以自行修改该路由的返回值,过滤掉密码、remember_token等敏感字段即可。
内容的提问来源于stack exchange,提问作者user_
相关产品推荐
相关产品推荐

