diff --git a/nifi-pulsar-client-service/pom.xml b/nifi-pulsar-client-service/pom.xml
index 83bc58b..52adad9 100644
--- a/nifi-pulsar-client-service/pom.xml
+++ b/nifi-pulsar-client-service/pom.xml
@@ -26,6 +26,11 @@
jar
+
+ org.apache.pulsar
+ pulsar-client-auth-athenz
+ ${pulsar.version}
+
org.apache.nifi
nifi-pulsar-client-service-api
@@ -43,11 +48,6 @@
1.9.0
provided
-
- org.apache.nifi
- nifi-ssl-context-service-api
- provided
-
org.apache.nifi
nifi-mock
diff --git a/nifi-pulsar-client-service/src/main/java/org/apache/nifi/pulsar/auth/PulsarClientAthenzAuthenticationService.java b/nifi-pulsar-client-service/src/main/java/org/apache/nifi/pulsar/auth/PulsarClientAthenzAuthenticationService.java
index 736cd74..bc318aa 100644
--- a/nifi-pulsar-client-service/src/main/java/org/apache/nifi/pulsar/auth/PulsarClientAthenzAuthenticationService.java
+++ b/nifi-pulsar-client-service/src/main/java/org/apache/nifi/pulsar/auth/PulsarClientAthenzAuthenticationService.java
@@ -26,8 +26,9 @@
import org.apache.nifi.processor.util.StandardValidators;
import org.apache.pulsar.client.api.Authentication;
import org.apache.pulsar.client.api.AuthenticationFactory;
+import org.apache.pulsar.client.api.PulsarClientException.UnsupportedAuthenticationException;
+import org.apache.pulsar.client.impl.auth.AuthenticationAthenz;
-// import org.apache.pulsar.client.impl.auth.AuthenticationAthenz;
/**
* https://pulsar.apache.org/docs/en/security-athenz/
@@ -96,7 +97,6 @@ protected List getSupportedPropertyDescriptors() {
@Override
public Authentication getAuthentication() {
Map authParams = new HashMap<>();
- // TODO Define constants for these keys
authParams.put("tenantDomain", configContext.getProperty(TENANT_DOMAIN).getValue());
authParams.put("tenantService", configContext.getProperty(TENANT_SERVICE).getValue());
authParams.put("providerDomain", configContext.getProperty(PROVIDER_DOMAIN).getValue());
@@ -106,9 +106,12 @@ public Authentication getAuthentication() {
authParams.put("keyId", configContext.getProperty(TENANT_PRIVATE_KEY_ID).getValue());
}
- // return AuthenticationFactory.create(AuthenticationAthenz.class.getName(), authParams);
-
- return null;
+ try {
+ return AuthenticationFactory.create(AuthenticationAthenz.class.getName(), authParams);
+ } catch (UnsupportedAuthenticationException e) {
+ getLogger().error("Unable to authenticate", e);
+ return null;
+ }
}
}