📜  laravel sanctum 安装 - PHP (1)

📅  最后修改于: 2023-12-03 14:43:45.823000             🧑  作者: Mango

Laravel Sanctum 安装

Laravel Sanctum 是一个用于构建安全的 API 认证系统的官方 Laravel 包。它提供了一种简单的方法来实现基于令牌的身份验证和授权,以保护你的 API。

本文将介绍 Laravel Sanctum 的安装步骤,并提供一些示例代码来帮助你快速开始使用。

步骤 1:安装 Sanctum

要安装 Laravel Sanctum,你需要使用 Composer 运行以下命令:

composer require laravel/sanctum

这将自动下载并安装最新版本的 Sanctum 包。

步骤 2:配置 Sanctum

安装完成后,你需要发布 Sanctum 的配置文件。运行以下 Artisan 命令:

php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"

这将在你的项目中创建一个 sanctum.php 配置文件。你可以根据需要进行修改,但大多数情况下,保持默认配置即可。

步骤 3:准备数据库

在继续之前,你需要确保已按照 Laravel 的要求配置好数据库连接。然后,运行以下 Artisan 命令来创建 Sanctum 所需的数据库表:

php artisan migrate

这将创建 personal_access_tokens 表,用于存储用户的访问令牌。

步骤 4:配置中间件

为了使用 Sanctum 进行身份验证和授权,在 app/Http/Kernel.php 文件中添加 EnsureFrontendRequestsAreStateful 中间件:

use Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful;

...

protected $middlewareGroups = [
    'web' => [
        ...
        EnsureFrontendRequestsAreStateful::class,
    ],

    ...
];

这个中间件将确保前端请求具有有效的身份验证状态。

步骤 5:配置用户模型

接下来,你需要在你的用户模型中使用 Laravel Sanctum 提供的 HasApiTokens trait。在你的用户模型文件中添加以下行:

use Laravel\Sanctum\HasApiTokens;

class User extends Authenticatable
{
    use HasApiTokens, Notifiable;

    ...
}

这将添加与用户模型相关的 API 令牌存储和管理的方法。

步骤 6:启用身份验证

最后,你需要启用 Sanctum 的身份验证功能。在 config/auth.php 文件中的 guards 数组中,将 sanctum 驱动程序添加为一个新的认证卫士:

'guards' => [
    ...
    'sanctum' => [
        'driver' => 'sanctum',
        'provider' => 'users',
    ],
],
完成!

恭喜,你已成功安装和配置 Laravel Sanctum。现在,你可以开始使用 Sanctum 来保护你的 API,进行基于令牌的身份验证和授权。

希望这篇介绍能帮助你快速入门 Laravel Sanctum。

如果你想了解更多关于 Laravel Sanctum 的详细文档,请访问 Laravel Sanctum 官方文档

享受编码的乐趣!