iwouldrathercode/cognito

一个简单的 Laravel 扩展包,用于与 aws-php-sdk 和 Amazon Cognito 一起工作

0.0.2 2022-10-09 06:01 UTC

This package is auto-updated.

Last update: 2024-09-14 07:47:46 UTC


README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

一个简单的 Laravel 扩展包,用于与 aws-php-sdk 和 Amazon Cognito 一起工作。一旦安装,它可以生成 API 路由以与 Cognito API 一起工作,并生成和验证 JWT 令牌

安装与设置

步骤 1

您可以通过 Composer 安装此包

composer require iwouldrathercode/cognito

步骤 2

运行设置命令以安装依赖项并将存储文件夹链接到公共文件夹

php artisan cognito:setup

步骤 3

运行安装命令以发布配置文件和迁移

php artisan cognito:install

步骤 4

执行迁移。这将更新用户表,由于密码不再由 Laravel 管理,因此这将删除 password_resets 表

php artisan migrate

步骤 5

更新 config/auth.php,将默认守卫设置为 api

    ..
    ..

    'defaults' => [
        'guard' => 'api',
        'passwords' => 'users',
    ],
    ..
    ..

步骤 6

更新 config/auth.php 中的 guards 数组,使用 'cognito' 作为驱动程序配置 api

    ..
    ..
    'guards' => [
        ..
        ..

        'api' => [
            'driver' => 'cognito',
            'provider' => 'users'
        ]
    ],
    ..
    ..

步骤 7

确保 Cognito 用户池和 ClientID 的环境变量在 .env 中,这将影响 config/cognito.php 配置文件

AWS_COGNITO_USER_POOL_ID=
AWS_COGNITO_CLIENT_ID=
AWS_DEFAULT_REGION=

使用方法

此包将创建 /api 路由以管理身份验证

POST -> api/confirm-forgot-password -> confirm-forgot-password › 
Iwouldrathercode\Cognito\Http\Controllers\SelfServiceController@confirmForgotPassword

POST -> api/forgot-password -> forgot-password › Iwouldrathercode\Cognito\Http\Controllers\SelfServiceController@forgotPassword

POST -> api/login -> signin › 
Iwouldrathercode\Cognito\Http\Controllers\LoginController@login

POST -> api/register -> signup › 
Iwouldrathercode\Cognito\Http\Controllers\RegisterController@register

POST -> api/verify -> verify › 
Iwouldrathercode\Cognito\Http\Controllers\EmailVerificationController@verify

POST -> api/logout -> signout › 
Iwouldrathercode\Cognito\Http\Controllers\LoginController@logout

待办事项

  • 创建有效的单元测试用例

变更日志

请参阅 CHANGELOG 以获取有关最近更改的更多信息。

鸣谢

许可证

MIT 许可证 (MIT)。请参阅 许可证文件 以获取更多信息。