[MXS-629] Lack of tables_priv privilege causes confusing error message Created: 2016-03-21  Updated: 2016-03-23  Resolved: 2016-03-23

Status: Closed
Project: MariaDB MaxScale
Component/s: Core
Affects Version/s: 1.4.0
Fix Version/s: 1.4.1

Type: Bug Priority: Major
Reporter: Kolbe Kegel (Inactive) Assignee: markus makela
Resolution: Fixed Votes: 0
Labels: None


 Description   

MaxScale 1.4 introduces a requirement that the user reading privilege tables on the backend has the table_priv privilege. If this privilege is not granted, MaxScale complains with this error:

RW Split Router: Unable to load database grant information, MaxScale authentication will proceed without including database permissions. To correct this GRANT SHOW DATABASES ON . privilege to the user maxscalemonitor.

Loading users from [mysql.user] without access to [mysql.db] for service [RW Split Router]. MaxScale Authentication with DBname on connect will not consider database grants.

This error message is inaccurate. The problem here is with access to mysql.tables_priv, not mysql.db. The recommended solution is incorrect. This failure case for missing privileges on mysql.tables_priv should be handled separately from missing privileges on mysql.db.

It also doesn't seem right that missing access to mysql.tables_priv should have the side effect that users cannot specify a default database when connecting. The selection of a default database should be affected only by the privileges specified in mysql.db and not by privileges specified in mysql.tables_priv.



 Comments   
Comment by markus makela [ 2016-03-23 ]

Added missing check for SELECT privilege on mysql.tables_priv. If it is missing an error is logged.

Generated at Thu Feb 08 04:00:45 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.