acsystems/keycloak-guard-bundle

Symfony guard authentication via keycloak JWT

Installs: 3 919

Dependents: 0

Suggesters: 0

Security: 0

Type:symfony-bundle

2.0.1 2022-09-15 09:24 UTC

This package is auto-updated.

Last update: 2024-10-28 18:14:41 UTC


README

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

Superseded by acsystems/keycloak-authenticator-bundle

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

NameTypeUsage
base_uristringURL to your keycloak instance
realmoptional stringRealm name, will be derived if not present
client_idoptional stringHuman 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.

PlatformVersion
PHP7.4 / 8.1
Symfony5.4

Contributing

Please read our contribution guidelines before contributing.