zend-mvc-plugin-identity
Plugin for retrieving the current authenticated identity within zend-mvc controllers
Installation
Install via composer:
$ composer require zendframework/zend-mvc-plugin-identity
If you are using the zend-component-installer, you're done!
If not, you will need to add the component as a module to your
application. Add the entry 'Zend\Mvc\Plugin\Identity' to
your list of modules in your application configuration (typically
one of config/application.config.php or config/modules.config.php).
Usage
The Identity plugin allows retrieving the identity from the
AuthenticationService.
For the Identity plugin to work, a
Zend\Authentication\AuthenticationService or
Zend\Authentication\AuthenticationServiceInterface name or
alias must be defined and recognized by the ServiceManager.
Identity returns the identity in the AuthenticationService
or null if no identity is available.
As an example:
public function testAction()
{
if ($user = $this->identity()) {
// someone is logged !
} else {
// not logged in
}
}
When invoked, the Identity plugin will look for a service
by the name or alias Zend\Authentication\AuthenticationService
in the ServiceManager. You can provide this service to the
ServiceManager in a configuration file:
// In a configuration file...
use Zend\Authentication\AuthenticationService;
return [
'service_manager' => [
'aliases' => [
AuthenticationService::class => 'my_auth_service',
],
'invokables' => [
'my_auth_service' => AuthenticationService::class,
],
],
];
If such service is not found, the plugin will look for a service
named Zend\Authentication\AuthenticationServiceInterface in
the ServiceManager. For example:
use Zend\Authentication\AuthenticationServiceInterface;
return [
'service_manager' => [
'factories' => [
AuthenticationServiceInterface::class => MyAuthenticationServiceFactory::class,
],
],
];
The Identity plugin exposes two methods:
-
setAuthenticationService(AuthenticationServiceInterface $authenticationService) : void: Sets the authentication service instance to be used by the plugin. -
getAuthenticationService() : AuthenticationServiceInterface: Retrieves the current authentication service instance if any is attached.
Support
- Issues: github.com/zendframework/zend-mvc-plugin-identity/issues
- Source: github.com/zendframework/zend-mvc-plugin-identity
- Chat: zendframework-slack.herokuapp.com
- Forum: discourse.zendframework.com
Found a mistake or want to contribute to the documentation? Edit this page on GitHub!