Hi All,

Can the Config Provider be specified at the connector level or is the 
configuration only available at the worker level (docker configuration)?

Here are our observations:

  1.  When we specify the config provider at the connector level then when 
adding the connector, the validation for the connector fails.
  2.  When we specify the config provider at the worker level and then add the 
connector then validation is successful.
  3.  When we specify the config provider at both levels and add the connector 
then validation is successful.
     *   If we then delete the worker level configuration and restart kafka 
connect then connector still operates correctly
     *   If we then delete the connector and try to re-add it then the 
validation fails again


Example connect configuration:
{
"config.providers": "uda",
"config.providers.uda.class": 
"com.my.kafka.config.provider.uda.MyConfigProvider",
"config.providers.uda.param.tenantkey": "mytenant",
"config.providers.uda.param.url": 
"http://tenantlocation<http://tenantlocation/>",
"connector.class": "io.debezium.connector.sqlserver.SqlServerConnector",
"database.dbname": "${uda:UUD_DB_NAME}"
...
}

Example worker configuration:
CONNECT_CONFIG_PROVIDERS_UDA_PARAM_URL: 
http://tenantlocation<http://tenantlocation/>
      CONNECT_CONFIG_PROVIDERS_UDA_PARAM_TENANTKEY: "mytenant"
      CONNECT_CONFIG_PROVIDERS: "uda"
      CONNECT_CONFIG_PROVIDERS_UDA_CLASS: " 
com.my.kafka.config.provider.uda.MyConfigProvider"


Related documentation and links:
https://docs.confluent.io/platform/current/connect/security.html#externalizing-secrets
https://issues.apache.org/jira/browse/KAFKA-7225

Thanks

Reply via email to