0
我將在服務器中託管我的應用程序。我只想獲取登錄到我的應用程序的用戶的NT ID。如果有人有答案,請分享一下嗎?從Java服務器獲取登錄用戶的NT ID
system.getremoteUser()
和system.getProperty
將返回主機名稱。
我將在服務器中託管我的應用程序。我只想獲取登錄到我的應用程序的用戶的NT ID。如果有人有答案,請分享一下嗎?從Java服務器獲取登錄用戶的NT ID
system.getremoteUser()
和system.getProperty
將返回主機名稱。
如果您具體談談NT ID在Java
取,這可能工作
com.sun.security.auth.module.NTSystem NTSystem = new
com.sun.security.auth.module.NTSystem();
System.out.println(NTSystem.getName());
System.out.println(NTSystem.getDomain());
System.out.println(NTSystem.getUserSID());
但對於那些你已經NTLM身份驗證,你應該有NTLM(Windows)中web應用的上下文用戶爲你的應用程序的用戶作爲 - 這是一般情況。
在通過NTLM對用戶進行身份驗證時,最好查詢NTLMRealm(在Tomcat中)或將用戶身份(SID等)存儲在上下文中(這可以是基於會話的或特定的自定義服務器端實現)。現在使用此上下文來檢索登錄的用戶的NTLM屬性(SID,GroupID等)。