[MDEV-10131] BINLOG FORMAT privilege Created: 2016-05-26 Updated: 2017-05-29 |
|
| Status: | Open |
| Project: | MariaDB Server |
| Component/s: | Authentication and Privilege System |
| Fix Version/s: | None |
| Type: | Task | Priority: | Minor |
| Reporter: | VAROQUI Stephane | Assignee: | VAROQUI Stephane |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Description |
|
Choosing from the application layer the type of binlog format can be a requirement for the DBA that would like to enforce a specific default format , but wan't to act differently in some batch or a set of tables used by an application. Unfortunately the only way to do this is by giving the application the SUPER privilege set session binlog_format=ROW; break without the super priv . Giving that the super privilege can lead to data corruption by simply changing the replication position , this is a major security concern that would be address by introducing a BINLOG FORMAT privilege that will only affect the session binlog_format change. |
| Comments |
| Comment by Geoff Montee (Inactive) [ 2016-05-26 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
You could do this with a stored procedure that is configured with SQL SECURITY DEFINER. e.g.:
Example:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by VAROQUI Stephane [ 2016-05-26 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Thanks for the suggestion , We don't control the java app that have to be deployed on our databases, we just change the JDBC connection string to enable ROW based, the architecture is active active and can not use auto increment offset. Some row event ere needed to replace auto increment with uuid_short . We have a trigger doing this and it work transparently to the application but stay dangerous as the application developers will have access to replication command |