我正在使用具有Spring安全性的Active Directory授权来编写应用程序。我需要收集有关电子邮件和姓氏的信息。
授权后,我有DN字段 cn = Surname Name,ou = Company,ou = User,dc = subdomain,dc = company,dc = org 。我可以通过此字符串检索所有需要的信息(我使用了AD Explorer)。我尝试了解Spring Security文档,但我不明白。我应该不使用网络框架。
public Authentication authenticate(String username, String password) {
Authentication authentication = null;
try {
ActiveDirectoryLdapAuthenticationProvider authenticationProvider = new ActiveDirectoryLdapAuthenticationProvider(domain, server);
authentication = authenticationProvider.authenticate(new UsernamePasswordAuthenticationToken(username, password));
} catch (Exception ae) {
ae.printStackTrace();
}
return authentication;
}
我想写这样的方法
public HashMap<String, String> getUserData(String path);
其中的路径类似于 cn = Surname Name,ou = Company,ou = User,dc = subdomain,dc = company,dc = org 结果为: 电子邮件:user @ domain 姓 ...
或
public HashMap<String, String> getUserData(String domainLogin);
其中domainLogin是有效的AD登录名,例如DOMAIN \ domainLogin