turboFei opened a new issue, #4630: URL: https://github.com/apache/kyuubi/issues/4630
### Code of Conduct - [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) ### Search before asking - [X] I have searched in the [issues](https://github.com/apache/kyuubi/issues?q=is%3Aissue) and found no similar issues. ### Describe the feature Now the PasswdAuthenticationProvider only authenticate whether the specified user name and password is valid, and nothing return. ``` trait PasswdAuthenticationProvider { @throws[AuthenticationException] def authenticate(user: String, password: String): Unit } ``` In fact, in some use case, the transferred user name is not the valid user name. It might be a key pair, and is a limited secret used for some use cases. It is better that we can add a new method to return a subject to provided more authentication info. Such as : ``` trait PasswdAuthenticationProvider { @throws[AuthenticationException] def authenticate(user: String, password: String): Unit def authenticateAndReturnSubject(user: String, password: String): Subject = { authenticate(user, password) new Subject(user) } } ``` ### Motivation cover more password authentication use case. ### Describe the solution _No response_ ### Additional context _No response_ ### Are you willing to submit PR? - [ ] Yes. I would be willing to submit a PR with guidance from the Kyuubi community to improve. - [ ] No. I cannot submit a PR at this time. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
