簡體   English   中英

在 Symfony 2.8 中使用新的 LDAP 組件進行身份驗證

[英]Authentication with the new LDAP component in Symfony 2.8

我想在 Symfony 2.8 中嘗試新的 LDAP 組件並在幾天前開始使用它。 但是,我並沒有真正理解它並且在對用戶進行身份驗證時遇到問題。 我關注了這篇文章: http : //symfony.com/blog/new-in-symfony-2-8-ldap-component

這是我的配置文件:

# app/config/services.yml
services:
    app.ldap:
        class: Symfony\Component\Ldap\LdapClient
        arguments: ["ldaps://ldap.uni-rostock.de"]

和:

# app/config/security.yml
security:
    providers:
        # in_memory:
        #    memory: ~
        app_users:
            ldap:
                service: app.ldap
                base_dn: ou=people,o=uni-rostock,c=de
                search_dn: uid=tester,ou=people,o=uni-rostock,c=de
                search_password: testpass
                #filter: (sAMAccountName={username})
                filter: (uid={username})
                default_roles: ROLE_USER

    firewalls:
        dev:
            pattern: ^/(_(profiler|wdt)|css|images|js)/
            security: false

        admin:
            provider:  app_users
            stateless: true
            pattern:   ^/admin
            http_basic_ldap:
                service: app.ldap
                dn_string: "{username}"

這是連接到服務器的指南(只有德語,但重要部分是代碼): http : //www.itmz.uni-rostock.de/en/software/windows/universitaetsweite-dienste/ldap-authentifizierungsserver /

當我像這樣運行服務器時: php app/console server:run -vvv並打開http://localhost:8000/admin我被提示輸入憑據。 不幸的是,即使我嘗試了很多次,我也沒有通過,而且我非常確定我沒有打錯字。 在控制台中只有這個相關的行:

[Fri Mar 11 08:39:32 2016] 127.0.0.1:36632 [401]: /admin

我未經授權 (401) 並再次提示輸入憑據。

我可能錯過了什么嗎? 我嘗試了許多不同的組合,將值放在引號中,並嘗試添加:

access_control:
    - { path: ^/admin, roles: ROLE_USER }

security.yml ,但它沒有幫助。

還有另一個問題有點類似的問題:

使用 Symfony 2.8 進行 LDAP 身份驗證

但我真的不能再進一步了。

有人可能知道我還能嘗試什么嗎?

僅供參考,將其添加為答案:

問題是dn_string: "{username}" 除非您在提示輸入用戶名/密碼時輸入完整的 DN,否則這將不起作用。 例如,如果您的所有用戶都在一個公共 OU/容器中,您可以將其設置為: dn_string: uid={username},ou=people,o=uni-rostock,c=de

很高興這修復了它!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM