首頁  >  文章  >  後端開發  >  PHP取得LDAP伺服器Schema資料的方法

PHP取得LDAP伺服器Schema資料的方法

不言
不言原創
2018-07-17 10:46:092204瀏覽

最近工作中一直在與LDAP打交道,在官方推薦的client-apis裡,可以輕鬆找到每個語言對應的API,進而與LDAP伺服器互動。但在用ApacheDirectoryStudio時,這個軟體竟然能展示Schema數據,然後認真看了下官方文檔,還是沒看到有說明查詢Schema數據的地方(如果有小伙伴在文檔中看到相關說明,希望能留言告訴我)。但找到了用php寫的客戶端phpLDAPAdmin,接著透過其來源碼,發現如何查詢Schema資料。

透過官方文檔,我們查到Schema資料包含下面四個部分

  • syntaxes

  • attributes


#matching_rules

objectclasses以查詢objectclasses為例(也可以一次查詢),其對應的查詢方法如下######第一種情況###
$read_ret = ldap_read($ds, 'cn=Subschema', '(objectClass=subschema)', ['objectclasses']);
$read_ret = ldap_read($ds, 'cn=Subschema', '(objectClass=*)', ['objectclasses']);
###如果第一種查詢不到,則用第二種###
$read_ret = ldap_read($ds, 'cn=Aggregate,cn=Schema,cn=configuration,dc=example,dc=com', '(objectClass=*)';
$read_ret = ldap_read($ds, 'cn=Schema,cn=configuration,dc=example,dc=com', '(objectClass=*)', ['objectclasses']);
$read_ret = ldap_read($ds, 'cn=Schema,ou=Admin,dc=example,dc=com', '(objectClass=*)', ['objectclasses']);
###如果第二種查詢不到,則用第三種###
$read_ret = ldap_read($ds, 'cn=schema,cn=config', '(objectClass=*)', ['objectclasses']);
###相關推薦:############PHP的多任務協程處理的分析################ #####PHP取得伺服器端資訊的方法,php取得伺服器端#######

以上是PHP取得LDAP伺服器Schema資料的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn