vendor/scheb/two-factor-bundle/DependencyInjection/Configuration.php line 12

Open in your IDE?
  1. <?php
  2. namespace Scheb\TwoFactorBundle\DependencyInjection;
  3. use Symfony\Component\Config\Definition\Builder\TreeBuilder;
  4. use Symfony\Component\Config\Definition\ConfigurationInterface;
  5. class Configuration implements ConfigurationInterface
  6. {
  7.     public function getConfigTreeBuilder()
  8.     {
  9.         $treeBuilder = new TreeBuilder();
  10.         $rootNode $treeBuilder->root('scheb_two_factor');
  11.         $rootNode
  12.             ->children()
  13.                 ->scalarNode('persister')->defaultNull()->end()
  14.                 ->scalarNode('model_manager_name')->defaultNull()->end()
  15.                 ->arrayNode('trusted_computer')
  16.                     ->addDefaultsIfNotSet()
  17.                     ->children()
  18.                         ->booleanNode('enabled')->defaultFalse()->end()
  19.                         ->scalarNode('cookie_name')->defaultValue('trusted_computer')->end()
  20.                         ->scalarNode('cookie_lifetime')->defaultValue(60 24 3600)->end()
  21.                         ->booleanNode('cookie_secure')->defaultValue(false)->end()
  22.                         ->scalarNode('cookie_same_site')
  23.                             ->defaultValue('lax')
  24.                             ->validate()
  25.                             ->ifNotInArray(array('lax''strict'))
  26.                                 ->thenInvalid('Invalid cookie same-site value %s, must be "lax" or "strict"')
  27.                             ->end()
  28.                         ->end()
  29.                     ->end()
  30.                 ->end()
  31.                 ->scalarNode('exclude_pattern')->defaultNull()->end()
  32.                 ->arrayNode('parameter_names')
  33.                     ->addDefaultsIfNotSet()
  34.                     ->children()
  35.                         ->scalarNode('auth_code')->defaultValue('_auth_code')->end()
  36.                         ->scalarNode('trusted')->defaultValue('_trusted')->end()
  37.                     ->end()
  38.                 ->end()
  39.                 ->arrayNode('email')
  40.                     ->addDefaultsIfNotSet()
  41.                     ->children()
  42.                         ->booleanNode('enabled')->defaultFalse()->end()
  43.                         ->scalarNode('mailer')->defaultNull()->end()
  44.                         ->scalarNode('sender_email')->defaultValue('no-reply@example.com')->end()
  45.                         ->scalarNode('sender_name')->defaultNull()->end()
  46.                         ->scalarNode('template')->defaultValue('SchebTwoFactorBundle:Authentication:form.html.twig')->end()
  47.                         ->scalarNode('digits')->defaultValue(4)->end()
  48.                     ->end()
  49.                 ->end()
  50.                 ->arrayNode('google')
  51.                     ->addDefaultsIfNotSet()
  52.                     ->children()
  53.                         ->booleanNode('enabled')->defaultFalse()->end()
  54.                         ->scalarNode('issuer')->defaultNull()->end()
  55.                         ->scalarNode('server_name')->defaultNull()->end()
  56.                         ->scalarNode('template')->defaultValue('SchebTwoFactorBundle:Authentication:form.html.twig')->end()
  57.                     ->end()
  58.                 ->end()
  59.                 ->arrayNode('security_tokens')
  60.                     ->defaultValue(array("Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken"))
  61.                     ->prototype('scalar')->end()
  62.                 ->end()
  63.                 ->arrayNode('ip_whitelist')
  64.                     ->defaultValue(array())
  65.                     ->prototype('scalar')->end()
  66.                 ->end()
  67.             ->end()
  68.         ;
  69.         return $treeBuilder;
  70.     }
  71. }