You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by ff...@apache.org on 2015/10/20 10:31:02 UTC
karaf git commit: [KARAF-4024]role.policy group ceased to function
Repository: karaf
Updated Branches:
refs/heads/karaf-2.x 7d16949eb -> b12ea914b
[KARAF-4024]role.policy group ceased to function
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/b12ea914
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/b12ea914
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/b12ea914
Branch: refs/heads/karaf-2.x
Commit: b12ea914b13ada669eabeffddf8ade1e2540a614
Parents: 7d16949
Author: Freeman Fang <fr...@gmail.com>
Authored: Tue Oct 20 16:30:47 2015 +0800
Committer: Freeman Fang <fr...@gmail.com>
Committed: Tue Oct 20 16:30:47 2015 +0800
----------------------------------------------------------------------
.../jaas/boot/principal/GroupPrincipal.java | 25 +++++++++++++++++++-
.../karaf/jaas/boot/principal/RolePolicy.java | 7 +++---
2 files changed, 28 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/b12ea914/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/GroupPrincipal.java
----------------------------------------------------------------------
diff --git a/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/GroupPrincipal.java b/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/GroupPrincipal.java
index cb0f8f0..8418b23 100644
--- a/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/GroupPrincipal.java
+++ b/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/GroupPrincipal.java
@@ -15,11 +15,16 @@
package org.apache.karaf.jaas.boot.principal;
import java.security.Principal;
+import java.security.acl.Group;
+import java.util.Enumeration;
+import java.util.Hashtable;
-public class GroupPrincipal implements Principal {
+public class GroupPrincipal implements Group {
private String name;
+ private Hashtable<String,Principal> members = new Hashtable<String, Principal>();
+
public GroupPrincipal(String name) {
assert name != null;
this.name = name;
@@ -49,4 +54,22 @@ public class GroupPrincipal implements Principal {
public String toString() {
return "GroupPrincipal[" + name + "]";
}
+
+ public boolean addMember(Principal user) {
+ members.put(user.getName(), user);
+ return true;
+ }
+
+ public boolean removeMember(Principal user) {
+ members.remove(user.getName());
+ return true;
+ }
+
+ public boolean isMember(Principal member) {
+ return members.contains(member.getName());
+ }
+
+ public Enumeration<? extends Principal> members() {
+ return members.elements();
+ }
}
http://git-wip-us.apache.org/repos/asf/karaf/blob/b12ea914/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/RolePolicy.java
----------------------------------------------------------------------
diff --git a/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/RolePolicy.java b/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/RolePolicy.java
index 517b05b..c4d67fc 100644
--- a/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/RolePolicy.java
+++ b/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/principal/RolePolicy.java
@@ -15,6 +15,7 @@
package org.apache.karaf.jaas.boot.principal;
import java.security.Principal;
+import java.security.acl.Group;
import java.util.EnumSet;
import java.util.HashMap;
import java.util.Map;
@@ -35,8 +36,8 @@ public enum RolePolicy {
}
}
}
- }; // ,
- /* TODO Is this used anywhere?
+ },
+
GROUP_ROLES("group") {
public void handleRoles(Subject subject,Set<Principal> principals,String discriminator) {
Group group = new GroupPrincipal(discriminator);
@@ -50,7 +51,7 @@ public enum RolePolicy {
subject.getPrincipals().add(group);
}
};
- */
+
private String value;