2011-04-06 14 views
0

我有一個使用Java 1.6和Websphere構建的內部Web應用程序。只有登錄到域的用戶才能訪問該應用程序。我需要能夠訪問使用該應用程序的任何人的用戶名。我們正在使用Windows域控制器。我對Java相當陌生,無法弄清楚如何獲取這些信息。任何幫助,將不勝感激。如果您需要更多信息,我會很樂意提供。從Java Websphere應用程序確定網絡用戶

感謝,

安德魯

+0

讓我檢查一下。我會聯繫網絡人員,看看他們是如何做到這一點的。可能需要幾個小時,因爲我在他們前面的8個時區。 – 2011-04-06 08:38:05

回答

1

下面是最終工作的代碼。

LdapClient ldapClient = new LdapClient(); 
Boolean foundUserInAD = Boolean.FALSE; 
foundUserInAD = ldapClient.userIsInAD(userName, password); 

if(foundUserInAD) { 
    //Do stuff. 
} 
0

據我所知J2EE和Web應用程序,通常可以獲取的主要對象,然後檢索用戶名。那是你需要的嗎?

這裏是你如何能做到這一點在一個servlet中的doGet或doPost方法中的例子:

​​

獲取的密碼是非常棘手的,但如果你需要的是用戶名,這應該是他們「登錄」到WebSphere服務器上的名稱(即任何ID都被傳遞給它)。

這是你在找什麼?

0

你的問題是不是真正的Java,但被相關。基本上,如果您想使用WAS的安全設施進行網絡安全,則必須從WAS配置的LDAP中找到所有用戶。如果您無法做到這一點,請對應用程序進行更改,以便它實現自己定製的安全性(身份驗證&授權)機制。

這聽起來像是某人爲您的應用程序使用的servlet啓用了JavaEE安全角色,可能還有SPNEGO。這是非常好的配置,但它確實不允許任何從默認LDAP中找不到的人訪問任何內容。