added support for saml login (#1408)
This commit is contained in:
@@ -23,6 +23,7 @@ use App\Invoice\NumberGeneratorInterface;
|
||||
use App\Invoice\RendererInterface as InvoiceRendererInterface;
|
||||
use App\Ldap\FormLoginLdapFactory;
|
||||
use App\Plugin\PluginInterface;
|
||||
use App\Saml\Security\SamlFactory;
|
||||
use App\Timesheet\CalculatorInterface as TimesheetCalculator;
|
||||
use App\Timesheet\Rounding\RoundingInterface;
|
||||
use App\Timesheet\TrackingMode\TrackingModeInterface;
|
||||
@@ -85,6 +86,7 @@ class Kernel extends BaseKernel
|
||||
/** @var SecurityExtension $extension */
|
||||
$extension = $container->getExtension('security');
|
||||
$extension->addSecurityListenerFactory(new FormLoginLdapFactory());
|
||||
$extension->addSecurityListenerFactory(new SamlFactory());
|
||||
}
|
||||
|
||||
public function registerBundles()
|
||||
@@ -174,6 +176,7 @@ class Kernel extends BaseKernel
|
||||
}
|
||||
$loader->load($confDir . '/packages/local' . self::CONFIG_EXTS, 'glob');
|
||||
$loader->load($confDir . '/services' . self::CONFIG_EXTS, 'glob');
|
||||
$loader->load($confDir . '/services-*' . self::CONFIG_EXTS, 'glob');
|
||||
$loader->load($confDir . '/services_' . $this->environment . self::CONFIG_EXTS, 'glob');
|
||||
|
||||
$container->addCompilerPass(new DoctrineCompilerPass(), PassConfig::TYPE_BEFORE_OPTIMIZATION, -1000);
|
||||
@@ -189,6 +192,7 @@ class Kernel extends BaseKernel
|
||||
|
||||
// some routes are based on app configs and will be imported manually
|
||||
$this->configureFosUserRoutes($routes);
|
||||
$this->configureSamlRoutes($routes);
|
||||
|
||||
// load bundle specific route files
|
||||
if (is_dir($confDir . '/routes/')) {
|
||||
@@ -229,4 +233,15 @@ class Kernel extends BaseKernel
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
protected function configureSamlRoutes(RouteCollectionBuilder $routes)
|
||||
{
|
||||
$saml = $this->getContainer()->getParameter('kimai.saml');
|
||||
|
||||
if (!$saml['activate']) {
|
||||
return;
|
||||
}
|
||||
|
||||
$routes->import('../src/Saml/Controller/SamlController.php', '/auth', 'annotation');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user