diff --git a/security/ldap.rst b/security/ldap.rst index c516d350bfa..841a2ec7ba4 100644 --- a/security/ldap.rst +++ b/security/ldap.rst @@ -49,8 +49,8 @@ The providers are configured to use a default service named ``ldap``, but you can override this setting in the security component's configuration. -An LDAP client can be simply configured, using the following service -definition: +An LDAP client can be simply configured using the built-in ``ldap`` PHP +extension with the following service definition: .. configuration-block:: @@ -59,13 +59,17 @@ definition: # app/config/services.yml services: ldap: - class: Symfony\Component\Ldap\LdapClient + class: Symfony\Component\Ldap\Ldap + arguments: ['@ext_ldap_adapter'] + ext_ldap_adapter: + class: Symfony\Component\Ldap\Adapter\ExtLdap\Adapter arguments: - - my-server # host - - 389 # port - - 3 # version - - false # SSL - - true # TLS + - host: my-server + port: 389 + encryption: tls + options: + protocol_version: 3 + referrals: false .. code-block:: xml @@ -76,12 +80,19 @@ definition: xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd"> - - my-server - 389 - 3 - false - true + + + + + + my-server + 389 + tls + + 3 + false + + @@ -89,18 +100,23 @@ definition: .. code-block:: php // app/config/services.php - use Symfony\Component\Ldap\LdapClient; + use Symfony\Component\Ldap\Ldap; + use Symfony\Component\Ldap\Adapter\ExtLdap\Adapter; use Symfony\Component\DependencyInjection\Definition; + $container->register('ldap', Ldap::class) + ->addArgument(new Reference('ext_ldap_adapter')); + $container - ->setDefinition('ldap', new Definition(LdapClient::class, array( - 'my-server', - 389, - 3, - false, - true, - - )); + ->setDefinition('ext_ldap_adapter', new Definition(Adapter::class, array( + 'host' => 'my-server', + 'port' => 389, + 'encryption' => 'tls', + 'options' => array( + 'protocol_version' => 3, + 'referrals' => false + ) + ))); Fetching Users Using the LDAP User Provider -------------------------------------------