diff --git a/.gitignore b/.gitignore index 9d64b2f..0c1cba4 100644 --- a/.gitignore +++ b/.gitignore @@ -22,6 +22,6 @@ # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* .idea/ -venafi-tpp-log-connector.iml +*.iml target/ dependency-reduced-pom.xml diff --git a/README.md b/README.md index 7beed13..437c448 100644 --- a/README.md +++ b/README.md @@ -30,13 +30,12 @@ This connector connects via HTTP to your instance of the Venafi Trust Protection # Development To manually install the connector: 1. Build the JAR with `mvn package` -2. Find the JAR in your target folder called venafi-tpp-log-connector-.jar +2. Find the JAR in your target folder called venafi-tpp-log-connector--fat.jar 3. Create a connect property file ``` name=venafi connector.class=com.opencredo.connect.venafi.tpp.log.TppLogSourceConnector tasks.max=1 -type.name=kafka-connect venafi.base.url= venafi.username= venafi.password= @@ -44,7 +43,7 @@ venafi.password= This is filled with the minimum values required, any default values are provided by the [config definition class](./src/main/java/com/opencredo/connect/venafi/tpp/log/TppLogSourceConfig.java). This can also be looked at for more information on configuration, or look at the [wiki on the config definitions.](https://github.com/opencredo/kafka-connect-venafi-tpp/wiki/Config-Definitions-explained.) Make sure to replace the items with the <> brackets with what's needed to connect to your Venafi TPP/VEDSDK instance. -4. Create a directory and place the JAR file in it, e.g. `/share/java/kafka-connect-venafi`. +4. Create a directory and place the JAR file in it, e.g. `/share/java/kafka-connect-venafi-tpp`. 5. Then call: `/bin/confluent load venafi -d venafi.properties` For more information please look at the [Confluent instructions on manually installing connectors](https://docs.confluent.io/current/connect/managing/install.html#connect-install-connectors). diff --git a/config/source-quickstart.properties b/config/source-quickstart.properties new file mode 100644 index 0000000..06e88f5 --- /dev/null +++ b/config/source-quickstart.properties @@ -0,0 +1,24 @@ +# The first few settings are required for all connectors: a name, the connector class to run, and the maximum number of tasks to create: +name=venafi +connector.class=com.opencredo.connect.venafi.tpp.log.TppLogSourceConnector +tasks.max=1 +# The remaining configs are specific to the Venafi source connector. In this example, we connect to +# the TPP API on localhost using username "admin" and password "admin". These values should be changed for +# your specific instance. +venafi.base.url=https://localhost:443/VEDSDK +venafi.username=admin +venafi.password=admin + +# Topic to publish TPP log data to. +# The default is "TPP-LOGS". +# Valid Values: non-empty string and no ISO control characters +#venafi.topic=TPP-LOGS + +# Window of data to pull from log api. +# Valid Values: [2,...,10000] +# The default is 100. +#venafi.batch.size=100 + +# Poll interval in milliseconds. E.G. Roughly, how often the connector will connect to the TPP API. +# The default is 1000 as in once a second. +#venafi.poll.interval=1000 diff --git a/logos/opencredo.png b/logos/opencredo.png new file mode 100644 index 0000000..604de32 Binary files /dev/null and b/logos/opencredo.png differ diff --git a/logos/venafi.png b/logos/venafi.png new file mode 100644 index 0000000..344e0f4 Binary files /dev/null and b/logos/venafi.png differ diff --git a/pom.xml b/pom.xml index 7b0ee15..023551c 100644 --- a/pom.xml +++ b/pom.xml @@ -3,9 +3,9 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 com.opencredo - venafi-tpp-log-connector - 0.0.1-SNAPSHOT - venafi-tpp-log-connector + kafka-connect-venafi-tpp + 0.9.1-SNAPSHOT + kafka-connect-venafi-tpp Kafka connector for Venafi Trust Protection Platform Security Events @@ -15,6 +15,11 @@ 10.1.0 2.0.1 2.23.4 + 0.11.1 + OpenCredo Ltd. + source + target/${project.artifactId}-${project.version}-package + UTF-8 @@ -116,6 +121,25 @@ ${java.version} + + maven-assembly-plugin + 3.0.0 + + + src/assembly/development.xml + src/assembly/package.xml + + + + + make-assembly + package + + single + + + + org.apache.maven.plugins maven-shade-plugin @@ -127,6 +151,7 @@ shade + ${project.artifactId}-${project.version}-fat classworlds:classworlds @@ -141,14 +166,89 @@ + + io.confluent + kafka-connect-maven-plugin + 0.11.1 + + + + kafka-connect + + + Kafka Connect Venafi TPP + + https://github.com/opencredo/kafka-connect-venafi-tpp/blob/master/README.md + + + This connector connects via HTTP to your instance of the Venafi Trust Protection + Platform ( which shall be referred to as TPP from here on) and pulls your Log events + into Kafka, allowing you to do any filtering/transforming/processing you'd like to do + within a comfortable Kafka environment. + + N.B. Currently the connector starts from the beginning of time (i.e. processes all past + events first), a future release will allow the option of starting from now (i.e. + skipping all previous events). + + logos/venafi.png + + ${connect.component.owner.username} + OpenCredo supports the Venafi source connector on behalf of Venafi. + + https://github.com/opencredo/kafka-connect-venafi-tpp + logos/opencredo.png + + opencredo + organization + ${connect.component.owner.username} + https://opencredo.com/ + logos/opencredo.png + + + source + + + + venafi + tpp + + + + + + + + + + + standalone + + + + maven-assembly-plugin + + + src/assembly/standalone.xml + + + + + + + spring-milestones Spring Milestones https://repo.spring.io/milestone + + sonatype-repository + Sonatype Repository + https://oss.sonatype.org/content/repositories/releases/ + diff --git a/src/assembly/development.xml b/src/assembly/development.xml new file mode 100644 index 0000000..aad4633 --- /dev/null +++ b/src/assembly/development.xml @@ -0,0 +1,17 @@ + + + development + + dir + + false + + + share/java/kafka-connect-venafi-tpp/ + + + diff --git a/src/assembly/package.xml b/src/assembly/package.xml new file mode 100644 index 0000000..ad5784b --- /dev/null +++ b/src/assembly/package.xml @@ -0,0 +1,39 @@ + + + package + + dir + + false + + + ${project.basedir} + share/doc/kafka-connect-venafi-tpp/ + + README* + LICENSE* + + + + ${project.basedir}/config + etc/kafka-connect-venafi-tpp + + * + + + + + + + share/java/kafka-connect-venafi-tpp + true + true + + org.apache.kafka:connect-api + + + + diff --git a/src/assembly/standalone.xml b/src/assembly/standalone.xml new file mode 100644 index 0000000..e35cf7a --- /dev/null +++ b/src/assembly/standalone.xml @@ -0,0 +1,30 @@ + + + standalone + + jar + + false + + + ${project.basedir} + / + + README* + LICENSE* + + + + + + / + true + true + runtime + + +