chillrend / pnj-socialite-provider
PNJ SSO 社交登录提供者
v1.1
2021-12-03 02:08 UTC
Requires
- php: ^7.2|^8.0
- ext-json: *
- socialiteproviders/manager: ^4.0
This package is auto-updated.
Last update: 2024-09-06 07:02:28 UTC
README
composer require chillrend/pnj-socialite-provider
安装与基本使用
请参阅基本安装指南,然后按照以下特定提供者说明进行操作。
在 config/services.php 中添加配置
'pnj' => [ 'client_id' => env('CLIENT_ID'), 'client_secret' => env('CLIENT_SECRET'), 'redirect' => env('REDIRECT_URI') ],
添加提供者事件监听器
配置包的监听器以监听 SocialiteWasCalled 事件。
将事件添加到 app/Providers/EventServiceProvider 中的 listen[] 数组。有关详细说明,请参阅基本安装指南。
protected $listen = [ \SocialiteProviders\Manager\SocialiteWasCalled::class => [ // ... other providers 'SocialiteProviders\\PNJ\\PNJExtendSocialite@handle', ], ];
使用方法
现在您应该可以使用提供者,就像您通常使用 Socialite 一样(假设您已安装了外观)
return Socialite::driver('pnj')->redirect();
返回的用户字段
sub用户系统内部 IDident用户的内部识别号(可以是 NIP(员工编号)或 NIM(学生编号),取决于用户的访问级别)name用户的全名email用户的电子邮件地址address用户的家庭地址date_of_birth用户的出生日期department_and_level用户的访问级别和用户部门(为数组)access_level用户在部门中的访问级别access_level_name访问级别的“可读”表示形式department用户的部门department_short_name部门的简称或名称
用户字段的 JSON 表示
{
"address": "187 Justen Point Suite 090\nWest Shania, TX 99746-9546",
"date_of_birth": "1979-03-14",
"department_and_level": [
{
"access_level": 99,
"access_level_name": "Admin",
"department": "Teknik Informatika dan Komputer",
"department_short_name": "TIK"
}
],
"email": "wilkinson.marquise@example.com",
"iat": 1622287930,
"ident": 80779,
"name": "Prof. Ivory Ferry",
"sub": "4"
}