api-skeletons / zf-oauth2-doctrine-identity
Requires
- php: ^7.1
- api-skeletons/zf-oauth2-doctrine: ^3.1
- bshaffer/oauth2-server-php: ^1.10
- container-interop/container-interop: ^1.1
- gianarb/angry: ^0.1
Requires (Dev)
- api-skeletons/coding-standard: ^1.0
- phpro/zf-doctrine-hydration-module: ^2.0 || ^3.0
- phpunit/phpunit: ^5.7
- satooshi/php-coveralls: ^1.0
- zendframework/zend-hydrator: ^2.2
- zendframework/zend-i18n: ^2.7
- zendframework/zend-test: ^3.0
- zfcampus/zf-apigility: ^1.3
- zfcampus/zf-apigility-doctrine: ^2.1
README
版本
1.x 适用于 PHP 5.5 至 7.0。2.x 适用于 PHP 7.1 及以上。
关于
默认情况下,zfcampus/zf-mvc-auth 返回一个 ZF\MvcAuth\Identity\AuthenticatedIdentity
,当使用有效的访问令牌进行认证时。此存储库用 ZF\OAuth2\Doctrine\Identity\AuthenticatedIdentity
替换该身份。
ZF\OAuth2\Doctrine\Identity\AuthenticatedIdentity
存储了 api-skeletons/zf-oauth2-doctrine 的 AccessToken
Doctrine 实体。AuthentiatedIdentity
具有返回实体的函数 getUser()
、getAccessToken()
、getClient()
。有了这些,您的应用程序可以在请求的生命周期中继续使用 ORM。
api-skeletons/zf-oauth2-doctrine 支持多个 OAuth2 配置,api-skeletons/zf-oauth2-doctrine-identity 会遍历每个配置,根据 ZF\MvcAuth\Identity\AuthenticatedIdentity
提供的 access_token
和 client_id
来查找 AccessToken
实体。
授权
zf-mvc-auth 授权服务注入到 AuthenticatedIdentity
中。您可以使用 $identity->getAuthorizationService()
获取授权服务。有一个方便的 ACL 方法 $identity->isAuthorized($resource, $privilege)
。
安装
此模块的安装使用 composer。有关 composer 文档,请参阅 getcomposer.org。
composer require api-skeletons/zf-oauth2-doctrine-identity
这将添加到您的应用程序模块列表中
'modules' => array( ... 'ZF\OAuth2\Doctrine\Identity', ),