JAAS 和 Kerberos

从 2.0 版本开始,添加了一个 KafkaJaasLoginModuleInitializer 类以协助 Kerberos 配置。您可以将此 bean 及其所需的配置添加到您的应用上下文中。以下示例配置了这样一个 bean

@Bean
public KafkaJaasLoginModuleInitializer jaasConfig() throws IOException {
    KafkaJaasLoginModuleInitializer jaasConfig = new KafkaJaasLoginModuleInitializer();
    jaasConfig.setControlFlag("REQUIRED");
    Map<String, String> options = new HashMap<>();
    options.put("useKeyTab", "true");
    options.put("storeKey", "true");
    options.put("keyTab", "/etc/security/keytabs/kafka_client.keytab");
    options.put("principal", "[email protected]");
    jaasConfig.setOptions(options);
    return jaasConfig;
}