thecoati / socialite-cfx-provider
v1.0.0
2022-11-30 09:59 UTC
Requires
- php: ^8.0.2
- ext-json: *
- ext-openssl: *
- laravel/socialite: ^5.5
- phpseclib/phpseclib: ^3.0
README
Cfx.re Laravel socialite 适配器,用于通过 FiveM 和 RedM 进行身份验证。
目录
要求
- Laravel 9+
安装
- 安装依赖项
composer require thecoati/socialite-cfx-provider。 - 生成 RSA 公钥和私钥
php artisan cfx:keys。 - 将以下行添加到您的
.env
CFX_APP_NAME=Laravel CFX_CLIENT_ID=UNIQUE_CLIENT_ID CFX_REDIRECT_URL=http://127.0.0.1:8000/callback CFX_AVATAR_SIZE=128
或者,您也可以使用 php artisan vendor:publish --tag=cfx-config 发布配置文件。
CFX_APP_NAME 是在 应用页面 列出的应用程序名称。
请确保生成一个 *随机 且 唯一 的 CFX_CLIENT_ID,您可以通过自己生成此密钥。CFX_AVATAR_SIZE 决定了头像返回的大小。请注意,小于 8 或大于 1000 的值将导致空白头像。这是因为 Discourse 在他们的头像控制器中硬编码了这些限制。
除非是真实的 OAuth 流,否则 Discourse 论坛不需要任何应用程序注册方式。
作用域
可用的 Discourse 用户 API 密钥作用域。
https://github.com/discourse/discourse/blob/main/app/models/user_api_key_scope.rb
readwritemessage_buspushone_time_passwordnotificationssession_info*必需bookmarks_calendar
免责声明
遗憾的是,Discourse(在 forum.cfx.re 论坛上使用的社区软件)不提供完整的 OAuth2 流。
因此,我们修改了 Socialite 的身份验证流程以匹配 Discourse 的身份验证流程。
因此,Socialite 的某些功能可能与预期不同。
请注意,没有可用的 email scope 来获取用户的电子邮件。
有关 Discourse 用户 API 身份验证的更多信息,请参阅
https://meta.discourse.org/t/user-api-keys-specification/48536