mathsalmi/keycloak-guard-bundle

Symfony 3.4 guard authentication via keycloak JWT

1.0.0 2020-11-24 14:36 UTC

This package is auto-updated.

Last update: 2024-04-25 01:43:08 UTC


README

This package is a fork of acsystems/keycloak-guard-bundle and supports Symfony 3.4.

Original README

The goal of this bundle is to provide a Keycloak token authenticator guard for Symfony.

License PHP Code Style

Documentation

Quick start

Installation

Install the package from packagist using composer

composer require acsystems/keycloak-guard-bundle

Add the bundle.

config/bundles.php

return [
    ACSystems\KeycloakGuardBundle\ACSystemsKeycloakGuardBundle::class => ['all' => true]
];

Set up Symfony Security to use the custom authenticator.

config/packages/security.yaml

security:
  providers:
    keycloak:
      id: ACSystems\KeycloakGuardBundle\Security\Provider\KeycloakUserProvider
  firewalls:
    dev:
      pattern: ^/(_(profiler|wdt)|css|images|js)/
      security: false
    main:
      provider: keycloak
      stateless: true
      anonymous: true
      logout: ~

      guard:
        authenticators:
          - ACSystems\KeycloakGuardBundle\Security\KeycloakTokenAuthenticator

  access_control:
    # ...

Add your keycloak base url and realm

config/packages/keycloak_client.yaml:

acsystems_keycloak_guard:
  keycloak_guard:
    base_uri: 'https://example.com/'
    realm: 'example-realm'

Configurable parameters

Name Type Usage
base_uri string URL to your keycloak instance
realm optional string Realm name, will be derived if not present
client_id optional string Human readable client_id, will be derived if not present

Upgrading

For version migrations instructions see upgrade instructions.

Supported platforms

These are the platforms which are officially supported by this package. Any other versions might work but is not guaranteed.

Platform Version
PHP 7.1 / 7.2 / 7.3

Contributing

Please read our contribution guidelines before contributing.