masoud91/ yii2-idcoauth
为 Yii2 的 idco OAuth2 扩展
dev-master
2020-10-18 13:48 UTC
Requires
- yiisoft/yii2: ~2.0.0
This package is auto-updated.
Last update: 2024-09-27 18:46:43 UTC
README
为 Yii2 的 OAuth2 扩展
要求
该扩展需要以下扩展才能正常工作,您不需要手动安装它们
common\idco\mongodb\ActiveRecord
安装
安装此扩展的首选方式是通过 composer。
运行以下命令
php composer.phar require --prefer-dist infinitydesign/yii2-idcoauth "*"
或者在您的 composer.json
文件的 require 部分添加
"infinitydesign/yii2-idcoauth": "*"
用法
运行以下迁移以创建模式和初始文档(目前仅支持 mongodb)
./yii mongodb-migrate --migrationPath=@vendor/infinitydesign/yii2-idcoauth/migrations
在 modules 部分添加以下配置
'oauth2' => [ 'class' => 'filsh\yii2\oauth2server\Module', 'tokenParamName' => 'accessToken', 'tokenAccessLifetime' => 3600 * 24, 'storageMap' => [ 'user_credentials' => 'infinitydesign\idcoauth\OauthUser', 'client' => 'infinitydesign\idcoauth\OauthClients', 'access_token' => 'infinitydesign\idcoauth\OauthAccessTokens', 'refresh_token' => 'infinitydesign\idcoauth\OauthRefreshTokens', 'authorization_code' => 'infinitydesign\idcoauth\OauthAuthorizationCodes', 'client_credentials' => 'infinitydesign\idcoauth\OauthClients', 'scope' => 'infinitydesign\idcoauth\OauthScopes', ], 'grantTypes' => [ 'user_credentials' => [ 'class' => 'infinitydesign\idcoauth\UserCredentials', 'allow_public_clients' => false ], 'refresh_token' => [ 'class' => 'infinitydesign\idcoauth\RefreshToken', 'always_issue_new_refresh_token' => true ], 'authorization_code' => [ 'class' => 'infinitydesign\idcoauth\AuthorizationCode', ], ], 'components' => [ 'request' => function () { return \filsh\yii2\oauth2server\Request::createFromGlobals(); }, 'response' => [ 'class' => \filsh\yii2\oauth2server\Response::class, ], ], ]
<?= \infinitydesign\idcoauth\AutoloadExample::widget(); ?>