You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by mm...@apache.org on 2018/01/24 20:05:24 UTC

[incubator-pulsar] branch master updated: Support ztsUrl parameter in athenz client plugin (#1099)

This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new da4bd4a  Support ztsUrl parameter in athenz client plugin (#1099)
da4bd4a is described below

commit da4bd4ae3032159a3b8fe26f05e8067b3172b7c5
Author: hrsakai <hs...@yahoo-corp.jp>
AuthorDate: Thu Jan 25 05:05:22 2018 +0900

    Support ztsUrl parameter in athenz client plugin (#1099)
---
 .../org/apache/pulsar/client/impl/auth/AuthenticationAthenz.java  | 6 +++++-
 .../apache/pulsar/client/impl/auth/AuthenticationAthenzTest.java  | 8 ++++++++
 pulsar-client-auth-athenz/src/test/resources/authParams.json      | 3 ++-
 3 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/pulsar-client-auth-athenz/src/main/java/org/apache/pulsar/client/impl/auth/AuthenticationAthenz.java b/pulsar-client-auth-athenz/src/main/java/org/apache/pulsar/client/impl/auth/AuthenticationAthenz.java
index 85e9f8e..d833e95 100644
--- a/pulsar-client-auth-athenz/src/main/java/org/apache/pulsar/client/impl/auth/AuthenticationAthenz.java
+++ b/pulsar-client-auth-athenz/src/main/java/org/apache/pulsar/client/impl/auth/AuthenticationAthenz.java
@@ -56,6 +56,7 @@ public class AuthenticationAthenz implements Authentication, EncodedAuthenticati
     private static final String APPLICATION_X_PEM_FILE_BASE64 = "application/x-pem-file;base64";
 
     private transient ZTSClient ztsClient = null;
+    private String ztsUrl;
     private String tenantDomain;
     private String tenantService;
     private String providerDomain;
@@ -150,6 +151,9 @@ public class AuthenticationAthenz implements Authentication, EncodedAuthenticati
         if (authParams.containsKey("roleHeader")) {
             System.setProperty("athenz.auth.role.header", authParams.get("roleHeader"));
         }
+        if (authParams.containsKey("ztsUrl")) {
+            this.ztsUrl = authParams.get("ztsUrl");
+        }
     }
 
     @Override
@@ -164,7 +168,7 @@ public class AuthenticationAthenz implements Authentication, EncodedAuthenticati
         if (ztsClient == null) {
             ServiceIdentityProvider siaProvider = new SimpleServiceIdentityProvider(tenantDomain, tenantService,
                     privateKey, keyId);
-            ztsClient = new ZTSClient(null, tenantDomain, tenantService, siaProvider);
+            ztsClient = new ZTSClient(ztsUrl, tenantDomain, tenantService, siaProvider);
         }
         return ztsClient;
     }
diff --git a/pulsar-client-auth-athenz/src/test/java/org/apache/pulsar/client/impl/auth/AuthenticationAthenzTest.java b/pulsar-client-auth-athenz/src/test/java/org/apache/pulsar/client/impl/auth/AuthenticationAthenzTest.java
index c927262..36df7f1 100644
--- a/pulsar-client-auth-athenz/src/test/java/org/apache/pulsar/client/impl/auth/AuthenticationAthenzTest.java
+++ b/pulsar-client-auth-athenz/src/test/java/org/apache/pulsar/client/impl/auth/AuthenticationAthenzTest.java
@@ -111,6 +111,14 @@ public class AuthenticationAthenzTest {
     }
 
     @Test
+    public void testZtsUrl() throws Exception {
+        Field field = auth.getClass().getDeclaredField("ztsUrl");
+        field.setAccessible(true);
+        String ztsUrl = (String) field.get(auth);
+        assertEquals(ztsUrl, "https://localhost:4443/");
+    }
+
+    @Test
     public void testLoadPrivateKeyBase64() throws Exception {
         try {
             String paramsStr = new String(Files.readAllBytes(Paths.get("./src/test/resources/authParams.json")));
diff --git a/pulsar-client-auth-athenz/src/test/resources/authParams.json b/pulsar-client-auth-athenz/src/test/resources/authParams.json
index d7eb690..5d695b2 100644
--- a/pulsar-client-auth-athenz/src/test/resources/authParams.json
+++ b/pulsar-client-auth-athenz/src/test/resources/authParams.json
@@ -2,5 +2,6 @@
 	"tenantService": "test_service",
 	"privateKey": "./src/test/resources/tenant_private.pem",
 	"providerDomain": "test_provider",
-	"tenantDomain": "test_tenant"
+	"tenantDomain": "test_tenant",
+	"ztsUrl": "https://localhost:4443/"
 }

-- 
To stop receiving notification emails like this one, please contact
mmerli@apache.org.