druidfi / simplesamlphp-bundle
Provides a tight integration of SimpleSAMLphp into the Symfony full-stack framework
Installs: 365
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 3
Forks: 0
Open Issues: 2
Type:symfony-bundle
Requires
- php: ^7.4 || ^8.0
- composer-runtime-api: ^2
- predis/predis: ^1.1
- simplesamlphp/simplesamlphp: ^1.19.2
- symfony/security-bundle: ^5.3
README
Use SimpleSAMLphp for logging in to Symfony application.
Installation
Require the bundle with:
composer require -W druidfi/simplesamlphp-bundle:dev-main
Configure Security component in config/packages/security.yaml
:
security:
# https://symfony.com/doc/current/security/experimental_authenticators.html
enable_authenticator_manager: true
# https://symfony.com/doc/current/security.html#where-do-users-come-from-user-providers
providers:
druidfi_simplesamlphp_user_provider:
id: Druidfi\SimpleSamlPhpBundle\Security\UserProvider
firewalls:
main:
provider: druidfi_simplesamlphp_user_provider
# activate different ways to authenticate
# https://symfony.com/doc/current/security.html#firewalls-authentication
custom_authenticators:
- Druidfi\SimpleSamlPhpBundle\Security\SamlAuthenticator
logout:
path: druidfi_simplesamlphp_logout
target: /
# Easy way to control access for large sections of your site
# Note: Only the *first* access control that matches will be used
access_control:
- { path: '^/login', roles: ROLE_USER }
# This must be last one
- { path: '^/', roles: IS_AUTHENTICATED_ANONYMOUSLY }
Add routes to config/routes.yaml
:
###> druidfi/simplesamlphp-bundle ###
druidfi_simplesamlphp_login:
path: /login
controller: Druidfi\SimpleSamlPhpBundle\Controller\LoginController::login
druidfi_simplesamlphp_logout:
path: /logout
controller: Druidfi\SimpleSamlPhpBundle\Controller\LoginController::logout
###< druidfi/simplesamlphp-bundle ###
License
This bundle is under the MIT license. For more information, see the complete LICENSE file in the bundle.
Other information
This project can be found from the Packagist: https://packagist.org/packages/druidfi/simplesamlphp-bundle