You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by sa...@apache.org on 2019/03/26 03:39:14 UTC

[pulsar] branch master updated: Added sensitive annotations (#3866)

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

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


The following commit(s) were added to refs/heads/master by this push:
     new 8db0f86  Added sensitive annotations (#3866)
8db0f86 is described below

commit 8db0f86666a5641ebd34db231326aaf4d843baf5
Author: Sanjeev Kulkarni <sa...@gmail.com>
AuthorDate: Mon Mar 25 20:39:09 2019 -0700

    Added sensitive annotations (#3866)
---
 .../main/java/org/apache/pulsar/io/canal/CanalSourceConfig.java    | 2 ++
 .../main/java/org/apache/pulsar/io/core/annotations/FieldDoc.java  | 7 +++++++
 .../org/apache/pulsar/io/elasticsearch/ElasticSearchConfig.java    | 2 ++
 .../src/main/java/org/apache/pulsar/io/jdbc/JdbcSinkConfig.java    | 2 ++
 .../main/java/org/apache/pulsar/io/redis/RedisAbstractConfig.java  | 1 +
 .../java/org/apache/pulsar/io/twitter/TwitterFireHoseConfig.java   | 4 ++++
 6 files changed, 18 insertions(+)

diff --git a/pulsar-io/canal/src/main/java/org/apache/pulsar/io/canal/CanalSourceConfig.java b/pulsar-io/canal/src/main/java/org/apache/pulsar/io/canal/CanalSourceConfig.java
index 1af70c1..90cf08b 100644
--- a/pulsar-io/canal/src/main/java/org/apache/pulsar/io/canal/CanalSourceConfig.java
+++ b/pulsar-io/canal/src/main/java/org/apache/pulsar/io/canal/CanalSourceConfig.java
@@ -44,11 +44,13 @@ public class CanalSourceConfig implements Serializable{
     @FieldDoc(
         required = true,
         defaultValue = "",
+        sensitive = true,
         help = "Username to connect to mysql database")
     private String username;
     @FieldDoc(
         required = true,
         defaultValue = "",
+        sensitive = true,
         help = "Password to connect to mysql database")
     private String password;
     @FieldDoc(
diff --git a/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/annotations/FieldDoc.java b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/annotations/FieldDoc.java
index 465da13..beda53d 100644
--- a/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/annotations/FieldDoc.java
+++ b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/annotations/FieldDoc.java
@@ -45,6 +45,13 @@ public @interface FieldDoc {
     String defaultValue();
 
     /**
+     * Return if the field is a sensitive type or not.
+     * usernames/password/accesstokensm etc are some example of sensitive fields
+     * @return true if the field is sensitive, otherwise false
+     */
+    boolean sensitive() default false;
+
+    /**
      * Return the description of this field.
      *
      * @return the help message of this field
diff --git a/pulsar-io/elastic-search/src/main/java/org/apache/pulsar/io/elasticsearch/ElasticSearchConfig.java b/pulsar-io/elastic-search/src/main/java/org/apache/pulsar/io/elasticsearch/ElasticSearchConfig.java
index f929f97..1268f19 100644
--- a/pulsar-io/elastic-search/src/main/java/org/apache/pulsar/io/elasticsearch/ElasticSearchConfig.java
+++ b/pulsar-io/elastic-search/src/main/java/org/apache/pulsar/io/elasticsearch/ElasticSearchConfig.java
@@ -77,6 +77,7 @@ public class ElasticSearchConfig implements Serializable {
     @FieldDoc(
         required = false,
         defaultValue = "",
+        sensitive = true,
         help = "The username used by the connector to connect to the elastic search cluster. If username is set, a password should also be provided."
     )
     private String username;
@@ -84,6 +85,7 @@ public class ElasticSearchConfig implements Serializable {
     @FieldDoc(
         required = false,
         defaultValue = "",
+        sensitive = true,
         help = "The password used by the connector to connect to the elastic search cluster. If password is set, a username should also be provided"
     )
     private String password;
diff --git a/pulsar-io/jdbc/src/main/java/org/apache/pulsar/io/jdbc/JdbcSinkConfig.java b/pulsar-io/jdbc/src/main/java/org/apache/pulsar/io/jdbc/JdbcSinkConfig.java
index b0508ba..3bfc72c 100644
--- a/pulsar-io/jdbc/src/main/java/org/apache/pulsar/io/jdbc/JdbcSinkConfig.java
+++ b/pulsar-io/jdbc/src/main/java/org/apache/pulsar/io/jdbc/JdbcSinkConfig.java
@@ -43,12 +43,14 @@ public class JdbcSinkConfig implements Serializable {
     @FieldDoc(
         required = false,
         defaultValue = "",
+        sensitive = true,
         help = "Username used to connect to the database specified by `jdbcUrl`"
     )
     private String userName;
     @FieldDoc(
         required = false,
         defaultValue = "",
+        sensitive = true,
         help = "Password used to connect to the database specified by `jdbcUrl`"
     )
     private String password;
diff --git a/pulsar-io/redis/src/main/java/org/apache/pulsar/io/redis/RedisAbstractConfig.java b/pulsar-io/redis/src/main/java/org/apache/pulsar/io/redis/RedisAbstractConfig.java
index 519b398..ab6c293 100644
--- a/pulsar-io/redis/src/main/java/org/apache/pulsar/io/redis/RedisAbstractConfig.java
+++ b/pulsar-io/redis/src/main/java/org/apache/pulsar/io/redis/RedisAbstractConfig.java
@@ -55,6 +55,7 @@ public class RedisAbstractConfig implements Serializable {
     @FieldDoc(
         required = false,
         defaultValue = "",
+        sensitive = true,
         help = "The password used to connect to Redis")
     private String redisPassword;
 
diff --git a/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHoseConfig.java b/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHoseConfig.java
index 3d361af..f2cf10c 100644
--- a/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHoseConfig.java
+++ b/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHoseConfig.java
@@ -59,6 +59,7 @@ public class TwitterFireHoseConfig implements Serializable {
     @FieldDoc(
         required = true,
         defaultValue = "",
+        sensitive = true,
         help = "Your twitter app consumer key. See "
                 + "https://developer.twitter.com/en/docs/basics/authentication/guides/access-tokens for details"
     )
@@ -67,6 +68,7 @@ public class TwitterFireHoseConfig implements Serializable {
     @FieldDoc(
         required = true,
         defaultValue = "",
+        sensitive = true,
         help = "Your twitter app consumer secret. "
                 + "See https://developer.twitter.com/en/docs/basics/authentication/guides/access-tokens for details"
     )
@@ -75,6 +77,7 @@ public class TwitterFireHoseConfig implements Serializable {
     @FieldDoc(
         required = true,
         defaultValue = "",
+        sensitive = true,
         help = "Your twitter app token. "
                 + "See https://developer.twitter.com/en/docs/basics/authentication/guides/access-tokens for details"
     )
@@ -83,6 +86,7 @@ public class TwitterFireHoseConfig implements Serializable {
     @FieldDoc(
         required = true,
         defaultValue = "",
+        sensitive = true,
         help = "Your twitter app token secret. "
                 + "See https://developer.twitter.com/en/docs/basics/authentication/guides/access-tokens for details"
     )