-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for Kerberos credentials #297
base: main
Are you sure you want to change the base?
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
String path, | ||
String what | ||
) { | ||
if (principal == null || principal.isBlank()) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Neither should have embedded double-quotes, else the formatting of sasl.jaas.config
in kafkaClientProperties()
will be corrupted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah. I think double-quotes would have to be escaped.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will there be tests in tests/credentials as well?
@Cerchie, thanks for noticing! I hadn't looked into it. I don't think we need to extend the |
thanks! |
This comment has been minimized.
This comment has been minimized.
This reverts commit 944d0c2.
I've reverted the commit that added the almost-working integration tests. @flippingbits helped click-test a Quarkus app jar built using this branch against a local Kerberos-enabled CP Kafka environment. However, click-testing with the native executable threw some "method not found" errors. The offending classes will need to be added to the GraalVM reflection configuration. |
Summary of Changes
Completely untested.
Closes #127
The options for Kerberos auth are:
keytab_path
(required)principal
(required), andservice_name
(optional, defaults tokafka
if not provided)Any additional details or context that should be provided?
SR does not support Kerberos as a client auth mechanism, hence
KerberosCredentials
is not included in the spec forschema_registry.credentials
.Integration tests for Kerberos auth can be added at a later point (TODO: create issue). For reference, see how librdkafka sets up Kafka environments, using the trivup library.
Pull request checklist
Please check if your PR fulfills the following (if applicable):