2012-08-15 27 views
-1

用戶的詳細信息,我想知道我在哪裏或如何獲得用戶的詳細信息 如用戶名,身份證號碼和電子郵件時,他/她登錄-中的 企業內部網使用PHP的網絡?如何捕獲Windows中使用PHP

我想使用這些詳細信息來自動驗證用戶到我正在開發的網絡應用程序 。

我已閱讀過有關AUTH_USER,但我在哪裏或如何訪問該變量?

+0

看起來像不可能的東西! – Sourav 2012-08-15 06:25:13

+0

你使用什麼樣的認證? – 2012-08-15 06:28:40

+0

該數據不是由瀏覽器提供的;即使它是,你如何驗證它沒有密碼? – 2012-08-15 06:31:52

回答

1

你可以通過PHP LDAP函數完成你想要的大部分功能。唯一的問題是你需要爲每個用戶獲得一個獨特的項目。你將不得不做更多的研究,但我非常肯定,如果你使用IIS作爲web服務器而不是Apache,那麼在另一端獲取用戶的登錄名/用戶名會有一些怪癖或詭計 - 你可以然後用以下列方式對LDAP進行查詢:

<?php 
// $ds is a valid link identifier for a directory server 

// $person is all or part of a person's name, eg "Jo" 

$dn = "o=My Company, c=US"; 
$filter="(|(sn=$person*)(givenname=$person*))"; 
$justthese = array("ou", "sn", "givenname", "mail"); 

$sr=ldap_search($ds, $dn, $filter, $justthese); 

$info = ldap_get_entries($ds, $sr); 

echo $info["count"]." entries returned\n"; 
?> 

Apache將僅將AUTH_USER作爲空白返回。解決方法是爲其登錄創建一次性請求,將其存儲在cookie中並使用相同的LDAP查詢獲取用戶的最新信息。

+0

我正在使用apache2先生。 – JCm 2012-08-15 06:32:38

+0

@Jayzee是的,我認爲訣竅就是使用IIS,然後在微軟產品互相交談的地方有一些半不安全的地方,你可以利用它。一點谷歌搜索只是幫助。您所指的AUTH_USER是IIS獲取用戶信息的技巧。一旦你有了這些,你可以查詢你的LDAP服務器(假設公司有他們的可能) – Fluffeh 2012-08-15 06:35:37

+0

其實,先生,服務器上有兩個http服務器,有IIS和Apache。儘管我開發的所有工具都使用Apache,而其他一些開發人員在其中使用了IIS中的Web應用程序工具。當我的http服務器是Apache時,沒有辦法獲得用戶的詳細信息嗎? – JCm 2012-08-15 06:40:04

相關問題