summaryrefslogtreecommitdiffstats
path: root/base/common/src/com/netscape/cmscore/usrgrp
diff options
context:
space:
mode:
authorEndi Sukma Dewata <edewata@redhat.com>2012-07-30 19:50:23 -0500
committerEndi Sukma Dewata <edewata@redhat.com>2012-07-31 23:16:34 -0500
commit7d4a40bdd6bf6ef37705be7131fdc179bb5c1e7d (patch)
treebe962766b1f7afa710650322a436251d2ead963d /base/common/src/com/netscape/cmscore/usrgrp
parent0d2ce4c6a9a4c05a0098b13cf6743cfe7f2fc6e5 (diff)
downloadpki-7d4a40bdd6bf6ef37705be7131fdc179bb5c1e7d.tar.gz
pki-7d4a40bdd6bf6ef37705be7131fdc179bb5c1e7d.tar.xz
pki-7d4a40bdd6bf6ef37705be7131fdc179bb5c1e7d.zip
Refactored PKI JNDI realm.
The PKI JNDI realm has been modified to utilize the authentication and authorization subsystems in PKI engine directly. It's no longer necessary to define the LDAP connection settings in Tomcat's configuration files. Ticket #126
Diffstat (limited to 'base/common/src/com/netscape/cmscore/usrgrp')
-rw-r--r--base/common/src/com/netscape/cmscore/usrgrp/UGSubsystem.java31
1 files changed, 31 insertions, 0 deletions
diff --git a/base/common/src/com/netscape/cmscore/usrgrp/UGSubsystem.java b/base/common/src/com/netscape/cmscore/usrgrp/UGSubsystem.java
index 0489fa30a..259173078 100644
--- a/base/common/src/com/netscape/cmscore/usrgrp/UGSubsystem.java
+++ b/base/common/src/com/netscape/cmscore/usrgrp/UGSubsystem.java
@@ -1225,6 +1225,37 @@ public final class UGSubsystem implements IUGSubsystem {
return null;
}
+ public Enumeration<IGroup> findGroupsByUser(String userDn) throws EUsrGrpException {
+ if (userDn == null) {
+ return null;
+ }
+
+ LDAPConnection ldapconn = null;
+
+ try {
+ String attrs[] = new String[2];
+
+ attrs[0] = "cn";
+ attrs[1] = "description";
+
+ ldapconn = getConn();
+ LDAPSearchResults res =
+ ldapconn.search(getGroupBaseDN(), LDAPv2.SCOPE_SUB,
+ "(&(objectclass=groupofuniquenames)(uniqueMember=" + userDn + "))",
+ attrs, false);
+
+ return buildGroups(res);
+ } catch (LDAPException e) {
+ log(ILogger.LL_FAILURE, CMS.getLogMessage("CMSCORE_USRGRP_LIST_GROUPS", e.toString()));
+ } catch (ELdapException e) {
+ log(ILogger.LL_FAILURE, CMS.getLogMessage("CMSCORE_USRGRP_LIST_GROUPS", e.toString()));
+ } finally {
+ if (ldapconn != null)
+ returnConn(ldapconn);
+ }
+ return null;
+ }
+
/**
* builds an instance of a Group entry
* @throws EUsrGrpException