private static Map<String, String> extractExtraProperties(final Configuration configuration, String prefix) {
    ImmutableMap.Builder<String, String> builder = ImmutableMap.builder();
    final Map<String, String> kafkaProperties = configuration.getValByRegex("^" + prefix + "\\..*");
    for (Map.Entry<String, String> entry : kafkaProperties.entrySet()) {
      String key = entry.getKey().substring(prefix.length() + 1);
      if (FORBIDDEN_PROPERTIES.contains(key)) {
        throw new IllegalArgumentException("Not suppose to set Kafka Property " + key);
      }
      builder.put(key, entry.getValue());
    }
    return builder.build();
  }
Copies Kafka SSL properties from source configuration to target property map.
<p>
It only copies SSL properties that are present in the source and not present in the target. It is useful to
propagate global configurations to the Kafka client but also account for use-cases where table properties are not
using the Hive specific prefixes ({@link #CONSUMER_CONFIGURATION_PREFIX}, {@link #PRODUCER_CONFIGURATION_PREFIX}).
</p>
@param source the configuration from which we will get the properties 
@param target the property map to which we will set the properties
kafka-handler/src/java/org/apache/hadoop/hive/kafka/KafkaUtils.java