簡體   English   中英

Symfony3 ldap組件

[英]Symfony3 ldap component

我正在嘗試通過LDAP對用戶進行身份驗證,並獲取經過身份驗證的用戶對象。 為此,我正在使用Symfony3安裝其ldap組件。

要安裝ldap組件,我使用了composer,如下所示:

composer require symfony/ldap

只是為了測試周圍的事物,我正在使用此免費測試廣告 所以現在我處於該組件可以工作的位置,並且可以擴展其類。

查看組件使用情況文檔,首先要連接到AD:

$ldap = new LdapClient('ldap.forumsys.com', 389, 3, false, true);

當我var_dump($ldap)這就是我得到的:

object(Symfony\Component\Ldap\LdapClient)#359 (1) {
object(Symfony\Component\Ldap\Ldap)#360 (1) {
object(Symfony\Component\Ldap\Adapter\ExtLdap\Adapter)#361 (3) {
array(6) {
      ["host"] "ldap.forumsys.com"
      ["port"] 389
      ["version"] 3
      ["useSsl"] false
      ["useStartTls"] true
      ["optReferrals"] false
      }
    }
  }
}

第二步是使用DN和用戶密碼對上述連接進行身份驗證:

$ldap->bind('ou=mathematicians,dc=example,dc=com', 'password');

ldap.forumsys.com對應的DN為:

 -> cn=read-only-admin,dc=example,dc=com

 ||

 -> ou=mathematicians,dc=example,dc=com

我不確定,但是偵察是第二種,我嘗試了兩種方式,每個用戶的密碼都是密碼。

這是symfony拋出此錯誤時:

    The options "optReferrals", "useSsl", "useStartTls" do not exist. Defined 

options are: "connection_string", "debug", "encryption", "host", "options", 

"port", "referrals", "version".

對它了解得不多,也不確定為什么它不起作用。

我也找到了這個文件:

[Symf Ldap Doc][3]

這兩個文檔是否顯示了如何連接在一起(如果可以的話)?

綁定應該是這樣的:

$ldap->bind('cn=read-only-admin,dc=example,dc=com', 'password');

下面的第二個編輯。

我弄錯了,我想你需要這樣打電話:

$ldap = new LdapClient('ldap.forumsys.com', 389, 3, false, false, false);

如果您需要使用FR3DLdapBundle的參考,請查看我的博客以了解如何進行設置。

暫無
暫無

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

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