summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authorEndi S. Dewata <edewata@redhat.com>2014-04-25 14:35:44 -0400
committerEndi S. Dewata <edewata@redhat.com>2014-04-29 17:33:53 -0400
commitf3c8cd311ebcec1578269d2071f92700d33e3955 (patch)
tree8f04ed3949a72a26962343bd037fb9df483b06a9 /base
parent7b6b60b7d8d26799ea1bda48e6e51fa05854c80e (diff)
downloadpki-f3c8cd311ebcec1578269d2071f92700d33e3955.tar.gz
pki-f3c8cd311ebcec1578269d2071f92700d33e3955.tar.xz
pki-f3c8cd311ebcec1578269d2071f92700d33e3955.zip
Updated TPS search filters.
The token, certificate, and activity database have been updated to search against some predetermined attributes. Ticket #920
Diffstat (limited to 'base')
-rw-r--r--base/server/cmscore/src/com/netscape/cmscore/dbs/LDAPDatabase.java6
-rw-r--r--base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/ActivityDatabase.java8
-rw-r--r--base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/TPSCertDatabase.java8
-rw-r--r--base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/TokenDatabase.java8
4 files changed, 24 insertions, 6 deletions
diff --git a/base/server/cmscore/src/com/netscape/cmscore/dbs/LDAPDatabase.java b/base/server/cmscore/src/com/netscape/cmscore/dbs/LDAPDatabase.java
index 4c3ac8dfb..650a65ea9 100644
--- a/base/server/cmscore/src/com/netscape/cmscore/dbs/LDAPDatabase.java
+++ b/base/server/cmscore/src/com/netscape/cmscore/dbs/LDAPDatabase.java
@@ -103,9 +103,9 @@ public abstract class LDAPDatabase<E extends IDBObj> extends Database<E> {
try (IDBSSession session = dbSubsystem.createSession()) {
Collection<E> list = new ArrayList<E>();
- filter = createFilter(filter);
- CMS.debug("LDAPDatabase: searching " + baseDN + " with filter " + filter);
- IDBSearchResults results = session.search(baseDN, filter);
+ String ldapFilter = createFilter(filter);
+ CMS.debug("LDAPDatabase: searching " + baseDN + " with filter " + ldapFilter);
+ IDBSearchResults results = session.search(baseDN, ldapFilter);
while (results.hasMoreElements()) {
@SuppressWarnings("unchecked")
diff --git a/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/ActivityDatabase.java b/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/ActivityDatabase.java
index 0222f3f00..da884f0e9 100644
--- a/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/ActivityDatabase.java
+++ b/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/ActivityDatabase.java
@@ -53,6 +53,12 @@ public class ActivityDatabase extends LDAPDatabase<ActivityRecord> {
@Override
public String createFilter(String filter) {
- return StringUtils.isEmpty(filter) ? "(id=*)" : "(id=*"+LDAPUtil.escapeFilter(filter)+"*)";
+
+ if (StringUtils.isEmpty(filter)) {
+ return "(id=*)";
+ }
+
+ filter = LDAPUtil.escapeFilter(filter);
+ return "(|(tokenID=*" + filter + "*)(userID=*" + filter + "*))";
}
}
diff --git a/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/TPSCertDatabase.java b/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/TPSCertDatabase.java
index e12a41b69..7450b0665 100644
--- a/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/TPSCertDatabase.java
+++ b/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/TPSCertDatabase.java
@@ -60,6 +60,12 @@ public class TPSCertDatabase extends LDAPDatabase<TPSCertRecord> {
@Override
public String createFilter(String filter) {
- return StringUtils.isEmpty(filter) ? "(id=*)" : "(id=*"+LDAPUtil.escapeFilter(filter)+"*)";
+
+ if (StringUtils.isEmpty(filter)) {
+ return "(id=*)";
+ }
+
+ filter = LDAPUtil.escapeFilter(filter);
+ return "(|(id=*" + filter + "*)(tokenID=*" + filter + "*)(userID=*" + filter + "*))";
}
}
diff --git a/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/TokenDatabase.java b/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/TokenDatabase.java
index f95e10bf7..f86c6e203 100644
--- a/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/TokenDatabase.java
+++ b/base/tps-tomcat/src/org/dogtagpki/server/tps/dbs/TokenDatabase.java
@@ -57,6 +57,12 @@ public class TokenDatabase extends LDAPDatabase<TokenRecord> {
@Override
public String createFilter(String filter) {
- return StringUtils.isEmpty(filter) ? "(id=*)" : "(id=*"+LDAPUtil.escapeFilter(filter)+"*)";
+
+ if (StringUtils.isEmpty(filter)) {
+ return "(id=*)";
+ }
+
+ filter = LDAPUtil.escapeFilter(filter);
+ return "(|(id=*" + filter + "*)(userID=*" + filter + "*))";
}
}