Skip to content
This repository has been archived by the owner on Jan 28, 2021. It is now read-only.

Define a simple interface to be able to implement authentication and authorization. #469

Closed
ajnavarro opened this issue Oct 18, 2018 · 2 comments
Assignees
Labels
enhancement New feature or request

Comments

@ajnavarro
Copy link
Contributor

ajnavarro commented Oct 18, 2018

Right now we just should able to implement a basic MySQL auth implementation, with users and passwords on a config file, but that interface must be prepared to do integrations in the future with LDAP, and Kerberos.

Also, audit logs showing who is executing which query should be taken in mind too.

@ajnavarro ajnavarro added the enhancement New feature or request label Oct 18, 2018
@kuba-- kuba-- assigned kuba-- and unassigned kuba-- Oct 18, 2018
@jfontan jfontan self-assigned this Oct 18, 2018
@jfontan
Copy link
Contributor

jfontan commented Oct 18, 2018

Vitess already defines authentication mechanisms and comes with several methods:

I have to check if it's possible to save hashes of passwords with salt instead of plain text. It seems feasible as the salt is sent by the server:

https://github.com/src-d/gitbase/blob/master/vendor/gopkg.in/src-d/go-vitess.v1/mysql/auth_server_static.go#L183-L186

@jfontan
Copy link
Contributor

jfontan commented Oct 18, 2018

Also, it seems feasible to change the authentication method. Right now it uses mysql_native_password and some new software complains as it tries to use a newer one caching_sha2_password.

https://dev.mysql.com/doc/refman/8.0/en/caching-sha2-pluggable-authentication.html

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants