首页 文章

无法使用symfony ldap连接到ldap服务器

提问于
浏览
-2

我在symfony 4上有站点,我想对LDAP服务器进行身份验证,使用symfony ldap组件 . 我按照官方文档https://symfony.com/doc/current/security/ldap.html一步一步地做了一切

我有下一个错误:

"exception" => BadCredentialsException {#268 ▼
    -token: UsernamePasswordToken {#260 …}
    #message: "Bad credentials."
    #code: 0
    #file: "/var/www/dev.apps/vendor/symfony/security/Core/Authentication/Provider/UserAuthenticationProvider.php"
    #line: 67
    -previous: Use

rnameNotFoundException {#280 ...} trace:{▶}

我的services.yaml:

parameters:
    locale: 'en'    
services:
    _defaults:
        autowire: true
        autoconfigure: true
        public: false

    App\:
        resource: '../src/*'
        exclude: '../src/{DependencyInjection,Entity,Migrations,Tests,Kernel.php}'

    App\Controller\:
        resource: '../src/Controller'
        tags: ['controller.service_arguments']

    Symfony\Component\Ldap\Ldap:
        arguments: ['@Symfony\Component\Ldap\Adapter\ExtLdap\Adapter']
    Symfony\Component\Ldap\Adapter\ExtLdap\Adapter:
        arguments:
        -   host: example.com
            port: 389
            #encryption: none
            options:
                protocol_version: 3
                referrals: false

我的security.yaml

security:
#    encoders:
#        App\Entity\User:
#            algorithm: plaintext

    providers:
#        in_memory: { memory: ~ }
        my_ldap:
            ldap:
                service: Symfony\Component\Ldap\Ldap
                base_dn: DC=example,DC=com
                search_dn: "username@example.com"
                search_password: somepass
    firewalls:
        dev:
            pattern: ^/(_(profiler|wdt)|css|images|js)/
            security: false
        main:
            anonymous: ~
            logout:    true

            form_login_ldap:
                provider:  my_ldap
                service: Symfony\Component\Ldap\Ldap
                login_path: login
                check_path: login
                dn_string: '{username}'
    access_control:
#        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
#        - { path: ^/, roles: ROLE_USER }

1 回答

相关问题