api-skeletons / zf-oauth2-doctrine-identity
Doctrine Enabled AuthenticatedIdentity
Installs: 54 664
Dependents: 1
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 2
Open Issues: 0
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
Versions
1.x for PHP 5.5 to 7.0. 2.x for PHP 7.1 onward.
About
By default zfcampus/zf-mvc-auth returns an ZF\MvcAuth\Identity\AuthenticatedIdentity
when authenticated with a valid access token. This repository replaces that identity with a ZF\OAuth2\Doctrine\Identity\AuthenticatedIdentity
.
ZF\OAuth2\Doctrine\Identity\AuthenticatedIdentity
stores the api-skeletons/zf-oauth2-doctrine AccessToken
Doctrine entity. The AuthentiatedIdentity
has the functions getUser()
, getAccessToken()
, getClient()
which return entities. With these your application can continue to work with ORM through the rest of the request lifecycle.
api-skeletons/zf-oauth2-doctrine supports multiple OAuth2 configurations and api-skeletons/zf-oauth2-doctrine-identity searches through each configuration to find the AccessToken
entity based on the access_token
and client_id
supplied by ZF\MvcAuth\Identity\AuthenticatedIdentity
.
Authorization
The zf-mvc-auth Authorization Service is injected into the AuthenticatedIdentity
. You may fetch the Authorization Service with $identity->getAuthorizationService()
. There is a convenience method for ACL $identity->isAuthorized($resource, $privilege)
.
Installation
Installation of this module uses composer. For composer documentation, please refer to getcomposer.org.
composer require api-skeletons/zf-oauth2-doctrine-identity
This will be added to your application's list of modules:
'modules' => array( ... 'ZF\OAuth2\Doctrine\Identity', ),