montross50 / passport-consumer
用于消费 Laravel passport,处理 OAuth 端点,并将远程用户映射到本地的库
1.0.4
2018-02-28 20:23 UTC
Requires
- php: ~5.6|~7.0
- doctrine/dbal: ^2.6
- guzzlehttp/guzzle: ~6.0
- illuminate/support: ^5.0,<5.7
- mockery/mockery: ^1.0
- optimus/api-consumer: ^0.2.3
Requires (Dev)
- laravel/passport: ^5.0
- orchestra/testbench: ~3.6
- phpunit/phpunit: ~7.0
- squizlabs/php_codesniffer: ^3.1
README
此包允许您使用密码授权流程或授权码授权流程消费 Laravel passport 本地或远程。目标是让您专注于您的应用程序,并将 OAuth 交给 passport,以及将 OAuth 的消费交给此包。
安装
composer require montross50/passport-consumer
环境配置
发布配置文件
php artisan vendor:publish --provider="Montross50\PassportConsumer\PassportConsumerServiceProvider" --tag=config
有很多配置选项。可能太多了。除了定义必要的环境变量外,该包应默认与 Laravel 安装一起工作。请注意以下主要配置选项
- enable_pg
- 如果设置为 true,则加载密码授权路由。
- enable_access
- 如果设置为 true,则加载授权码路由。
- passport_location
- 如果设置为 local,则假定给定的应用程序是安装了 passport 的应用程序。如果不是,则期望此值为您的 passport 服务器 URL。
- log_user_in
- 如果设置为 true,则会发生以下操作
- 从 user_endpoint 获取用户
- 如果远程 passport
- 为远程用户查找本地用户
- 如果没有找到,则使用默认值和数据从远程创建本地用户
- 使用 session guard 登录用户
- access_token 和 refresh_token 将在会话中。
- 如果设置为 true,则会发生以下操作
所需环境变量
- PC_PASSPORT_SECRET_PG
- 您密码授权客户端的 passport 密钥
- PC_PASSPORT_SECRET_ACCESS
- 您授权码客户端的 passport 密钥
- PC_PASSPORT_ID_PG
- 您密码授权客户端的 passport 客户端 ID
- PC_PASSPORT_ID_ACCESS
- 您授权码客户端的 passport 客户端 ID
用户模型
如果您正在使用远程 passport 安装,请将 Montross50\PassportConsumer\HasRemoteTokens
特性添加到您的 Users 模型中。
log_user_in 功能会在找不到本地用户时创建与远程用户配对的用户。默认值和字段在特性中定义,如果需要为新用户添加更多默认值,则必须重写。
运行迁移
此包将 api_token 和可配置的 remote_user_id 字段添加到您的 users 模型中。仅当您已将包配置为远程 passport 时才会发生此操作。
php artisan migrate
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG。
贡献
有关详细信息,请参阅 CONTRIBUTING 和 CONDUCT。
安全
如果您发现任何与安全相关的问题,请通过电子邮件 sch43228@gmail.com 而不是使用问题跟踪器。
鸣谢
- Trent Schmidt
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件。