📅  最后修改于: 2023-12-03 15:17:07.237000             🧑  作者: Mango
这是一个用于生成 JWT 密钥的 Laravel 应用程序,它使用 SQL 数据库来存储密钥和相关信息。这个应用程序可以方便地为你的 Laravel 应用程序生成一个安全的 JWT 密钥。
使用 Composer 安装依赖
composer require lcobucci/jwt
创建数据库表
php artisan migrate
在 .env
文件中添加以下配置
JWT_KEY_TABLE=jwt_keys
JWT_KEY_COLUMN=key
JWT_ALGO=HS256
要在应用程序中使用生成的 JWT 密钥,请使用以下代码:
<?php
use Lcobucci\JWT\Builder;
use Lcobucci\JWT\Signer\Hmac\Sha256;
$key = \DB::table(config('jwt-keygen.table'))->get()->first()->key;
$token = (new Builder())->setIssuer('your_issurer')
->setAudience('your_audience')
->setId('your_token_id', true)
->setIssuedAt(time())
->setExpiration(time() + 3600)
->sign(new Sha256(), $key)
->getToken();
echo $token;
要生成新的 JWT 密钥,请使用以下命令:
php artisan jwt-keygen:generate
这将在数据库中生成一个新的密钥,并将其输出到控制台。注意,你需要手动将这个密钥添加到你的应用程序代码中。
要查看当前存储在数据库中的所有密钥,请使用以下命令:
php artisan jwt-keygen:list-keys
这将打印出一个表格,其中包含所有密钥及其相关信息。
如果你在使用这个应用程序时遇到任何问题,请到 GitHub 上报告问题:
https://github.com/your_username/jwt-keygen-laravel/issues
如果你想为这个应用程序做出贡献,请 fork 这个仓库并提交PR:
https://github.com/your_username/jwt-keygen-laravel/pulls
我们欢迎任何形式的贡献,包括但不限于: