Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Duplicate
-
None
-
None
-
None
-
None
Description
It is difficult to supply configuration information to a custom SaslServer implementation when a SCRAM mechanism is used.
SaslServerAuthenticator.createSaslServer() creates a SaslServer for a given mechanism. The call to Sasl.createSaslServer() passes the broker config and a callback handler. In the case of a SCRAM mechanism the callback handler is a ScramServerCallbackHandler which doesn't have access to the jaasContext. This makes it hard to configure a such a SaslServer because I can't supply custom keys to the broker config (any unknown ones get removed) and I don't have access to the JAAS config.
In the case of a non-SCRAM SaslServer, I at least have access to the JAAS config via the SaslServerCallbackHandler.
A simple way to solve this would be to pass the jaasContext to the ScramServerCallbackHandler from where a custom SaslServerFactory could retrieve it.
Attachments
Issue Links
- links to