diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2014-04-09 23:17:03 +0200 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2014-04-09 23:17:03 +0200 |
| commit | c85dc62591ab2ce9eec3fd93004ba474f7b1fb19 (patch) | |
| tree | 9f345977429325c920becccce083cafe439a8d8f /src/main/java/com/c2kernel/lookup | |
| parent | 6f1332fb24e04b6970fc636788d219ac0d133e9a (diff) | |
Expanded server predefined steps to include server and agent maintenance
steps. Fixes #174
Diffstat (limited to 'src/main/java/com/c2kernel/lookup')
| -rw-r--r-- | src/main/java/com/c2kernel/lookup/LDAPLookup.java | 12 | ||||
| -rw-r--r-- | src/main/java/com/c2kernel/lookup/LDAPRoleManager.java | 13 |
2 files changed, 21 insertions, 4 deletions
diff --git a/src/main/java/com/c2kernel/lookup/LDAPLookup.java b/src/main/java/com/c2kernel/lookup/LDAPLookup.java index 08a80b6..4ea6e68 100644 --- a/src/main/java/com/c2kernel/lookup/LDAPLookup.java +++ b/src/main/java/com/c2kernel/lookup/LDAPLookup.java @@ -352,10 +352,6 @@ public class LDAPLookup else
return search(start.getFullDN(),LDAPConnection.SCOPE_SUB,"(&"+query.toString()+")",searchCons);
}
-
- public LDAPPathSet searchType(Path start, Path type) {
- return null;
- }
protected LDAPPathSet search(String startDN, int scope, String filter, LDAPSearchConstraints searchCons)
{
@@ -396,6 +392,14 @@ public class LDAPLookup searchCons.setDereference(LDAPSearchConstraints.DEREF_NEVER);
return search(start.getFullDN(), LDAPConnection.SCOPE_SUB, "objectClass=aliasObject", searchCons);
}
+
+ public LDAPPathSet searchAliases(EntityPath entity) {
+ LDAPSearchConstraints searchCons = new LDAPSearchConstraints();
+ searchCons.setBatchSize(0);
+ searchCons.setDereference(LDAPSearchConstraints.DEREF_NEVER);
+ return search(new DomainPath().getFullDN(), LDAPConnection.SCOPE_SUB, "(&(objectClass=aliasObject)(aliasedObjectName="+
+ LDAPLookupUtils.escapeDN(entity.getFullDN())+"))", searchCons);
+ }
public boolean exists(Path path) {
return LDAPLookupUtils.exists(getConnection(), path.getFullDN());
diff --git a/src/main/java/com/c2kernel/lookup/LDAPRoleManager.java b/src/main/java/com/c2kernel/lookup/LDAPRoleManager.java index b2cffc6..f40cd53 100644 --- a/src/main/java/com/c2kernel/lookup/LDAPRoleManager.java +++ b/src/main/java/com/c2kernel/lookup/LDAPRoleManager.java @@ -1,5 +1,6 @@ package com.c2kernel.lookup;
+import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.Enumeration;
@@ -207,5 +208,17 @@ public class LDAPRoleManager { // set attribute
LDAPLookupUtils.setAttributeValue(mLdap.getConnection(), roleEntry, "jobList", hasJobList?"TRUE":"FALSE");
}
+
+ public void setAgentPassword(AgentPath agent, String newPassword) throws ObjectNotFoundException, ObjectCannotBeUpdated, NoSuchAlgorithmException {
+ String encPasswd = AgentPath.generateUserPassword(newPassword, "SHA");
+ LDAPEntry agentEntry;
+ try {
+ agentEntry = LDAPLookupUtils.getEntry(mLdap.getConnection(), agent.getFullDN());
+ } catch (ObjectNotFoundException e) {
+ throw new ObjectNotFoundException("Agent "+agent.getAgentName()+" does not exist", "");
+ }
+ LDAPLookupUtils.setAttributeValue(mLdap.getConnection(), agentEntry, "userPassword", encPasswd);
+
+ }
}
|
