You could leverage SHOW GRANT which displays the privileges
SHOW GRANT [<user>] ON [CATALOG | DATABASE <database-name> | TABLE <table-name> | VIEW <view-name> | FUNCTION <function-name> | ANONYMOUS FUNCTION | ANY FILE]
You could use this code snippet to schedule a daily job that writes out this data to delta which would serve as historical audit report.