You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@knox.apache.org by lm...@apache.org on 2015/04/15 02:14:57 UTC
knox git commit: KNOX-529 - Fix wildcard based principal group mapping
Repository: knox
Updated Branches:
refs/heads/master cc9e4cfc7 -> 48fba646f
KNOX-529 - Fix wildcard based principal group mapping
Project: http://git-wip-us.apache.org/repos/asf/knox/repo
Commit: http://git-wip-us.apache.org/repos/asf/knox/commit/48fba646
Tree: http://git-wip-us.apache.org/repos/asf/knox/tree/48fba646
Diff: http://git-wip-us.apache.org/repos/asf/knox/diff/48fba646
Branch: refs/heads/master
Commit: 48fba646f34fd0025089351ee41e5ee138ecd8fb
Parents: cc9e4cf
Author: Larry McCay <lm...@hortonworks.com>
Authored: Tue Apr 14 20:14:49 2015 -0400
Committer: Larry McCay <lm...@hortonworks.com>
Committed: Tue Apr 14 20:14:49 2015 -0400
----------------------------------------------------------------------
.../security/principal/SimplePrincipalMapper.java | 3 +++
.../security/principal/PrincipalMapperTest.java | 17 +++++++++++++++++
2 files changed, 20 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/knox/blob/48fba646/gateway-spi/src/main/java/org/apache/hadoop/gateway/security/principal/SimplePrincipalMapper.java
----------------------------------------------------------------------
diff --git a/gateway-spi/src/main/java/org/apache/hadoop/gateway/security/principal/SimplePrincipalMapper.java b/gateway-spi/src/main/java/org/apache/hadoop/gateway/security/principal/SimplePrincipalMapper.java
index 6c91b2c..e1623e7 100644
--- a/gateway-spi/src/main/java/org/apache/hadoop/gateway/security/principal/SimplePrincipalMapper.java
+++ b/gateway-spi/src/main/java/org/apache/hadoop/gateway/security/principal/SimplePrincipalMapper.java
@@ -97,6 +97,9 @@ public class SimplePrincipalMapper implements PrincipalMapper {
if (groupMappings != null) {
groups = groupMappings.get(principalName);
+ if (groups == null) {
+ groups = groupMappings.get("*");
+ }
}
return groups;
http://git-wip-us.apache.org/repos/asf/knox/blob/48fba646/gateway-spi/src/test/java/org/apache/hadoop/gateway/security/principal/PrincipalMapperTest.java
----------------------------------------------------------------------
diff --git a/gateway-spi/src/test/java/org/apache/hadoop/gateway/security/principal/PrincipalMapperTest.java b/gateway-spi/src/test/java/org/apache/hadoop/gateway/security/principal/PrincipalMapperTest.java
index e50f5b2..890a46f 100644
--- a/gateway-spi/src/test/java/org/apache/hadoop/gateway/security/principal/PrincipalMapperTest.java
+++ b/gateway-spi/src/test/java/org/apache/hadoop/gateway/security/principal/PrincipalMapperTest.java
@@ -37,6 +37,23 @@ public class PrincipalMapperTest {
public void setup() {
mapper = new SimplePrincipalMapper();
}
+
+ @Test
+ public void testSimplePrincipalMappingWithWildcardGroups() {
+ String principalMapping = "";
+ String groupMapping = "*=users";
+ try {
+ mapper.loadMappingTable(principalMapping, groupMapping);
+ }
+ catch (PrincipalMappingException pme) {
+ pme.printStackTrace();
+ fail();
+ }
+
+ assertTrue(mapper.mapUserPrincipal("lmccay").equals("lmccay"));
+ assertTrue(mapper.mapGroupPrincipal("hdfs")[0].equals("users"));
+ assertTrue(mapper.mapGroupPrincipal("lmccay")[0].equals("users"));
+ }
@Test
public void testNonNullSimplePrincipalMappingWithGroups() {