paysera/lib-bearer-authentication-bundle

There is no license information available for the latest version (2.0.0) of this package.

Bearer Authentication Bundle

2.0.0 2024-03-15 10:10 UTC

This package is auto-updated.

Last update: 2024-04-15 10:18:53 UTC


README

Install

Add bundle to AppKernel.php:

$bundles = [
    ...
    new Paysera\BearerAuthenticationBundle\PayseraBearerAuthenticationBundle(),
];

Samples

Sample security.yml for symfony 3/4

security:
    providers:
        bearer_user:
            id: paysera_bearer_authentication.security_user.bearer_user_provider
    
    firewalls:
        bearer_secured:
            pattern: ^/api/
            stateless: true
            bearer: true
            provider: bearer_user

Sample security.yml for Symfony 5

security:
    enable_authenticator_manager: true
    providers:
      bearer_user:
            id: paysera_bearer_authentication.security_user.bearer_user_provider    

    firewalls:
      bearer_secured:
            pattern: ^/api
            stateless: true
            provider: bearer_user
            custom_authenticators:
              - Paysera\BearerAuthenticationBundle\Security\BearerPassportAuthenticator
            
    access_control:
        # require ROLE_ADMIN for /admin*
        - { path: '^/api', roles: ROLE_ADMIN }

All bearer handlers must be tagged with:

<tag name="paysera_bearer_authentication.handler" />

and implement \Paysera\BearerAuthenticationBundle\Security\User\HandlerInterface

Example of a handler services.yaml

    paysera_auth_token.security.auth_token_handler:
        class: 'App\Services\BearerHandler'
        tags:
            - { name: 'paysera_bearer_authentication.handler' }

Support matrix

The below table shows the supported PHP versions for this library, please review the composer.json file for each individual package for additional requirements.

Package version Symfony Version PHP Version
0.x 2.x 5.5
0.x 3.x 5.5
1.0.0 3.x 5.5
1.0.1 3.x 5.5
1.0.1 4.x 5.5
2.x 4.x 7.4
2.x 5.x 7.4