Added getting username from LDAP
Change-Id: Ib568da0537fdbe303c1ef2fe842124230467089f
diff --git a/full/src/main/java/de/ids_mannheim/korap/authentication/LdapAuth3.java b/full/src/main/java/de/ids_mannheim/korap/authentication/LdapAuth3.java
index 603ec38..8d3633f 100644
--- a/full/src/main/java/de/ids_mannheim/korap/authentication/LdapAuth3.java
+++ b/full/src/main/java/de/ids_mannheim/korap/authentication/LdapAuth3.java
@@ -252,6 +252,29 @@
}
return null;
}
+
+ public static String getUsername(String sUserDN, String ldapConfigFilename) throws LDAPException {
+ String sUserPwd = "*";
+ LDAPConfig ldapConfig = new LDAPConfig(ldapConfigFilename);
+ final String idsC2Attribute = "idsC2Profile";
+ final String uidAttribute = "uid";
+
+ SearchResult searchResult = search(sUserDN, sUserPwd, ldapConfig, false, false)
+ .getSearchResultValue();
+
+ if (searchResult == null) {
+ return null;
+ }
+
+ String username = null;
+ for (SearchResultEntry entry : searchResult.getSearchEntries()) {
+ username = entry.getAttributeValue(idsC2Attribute);
+ if (username == null) {
+ username = entry.getAttributeValue(uidAttribute);
+ }
+ }
+ return username;
+ }
public static void ldapTerminate(LDAPConnection lc) {
if (DEBUGLOG) System.out.println("Terminating...");
diff --git a/full/src/main/java/de/ids_mannheim/korap/oauth2/oltu/service/OltuTokenService.java b/full/src/main/java/de/ids_mannheim/korap/oauth2/oltu/service/OltuTokenService.java
index 5b1fbc9..665b082 100644
--- a/full/src/main/java/de/ids_mannheim/korap/oauth2/oltu/service/OltuTokenService.java
+++ b/full/src/main/java/de/ids_mannheim/korap/oauth2/oltu/service/OltuTokenService.java
@@ -284,7 +284,8 @@
if (config.getOAuth2passwordAuthentication()
.equals(AuthenticationMethod.LDAP)) {
try {
- username = LdapAuth3.getEmail(username, config.getLdapConfig());
+ //username = LdapAuth3.getEmail(username, config.getLdapConfig());
+ username = LdapAuth3.getUsername(username, config.getLdapConfig());
}
catch (LDAPException e) {
throw new KustvaktException(StatusCodes.LDAP_BASE_ERRCODE,