This PR mostly reverts #50 and adds correct implementations for fine-grained access control syntax (GRANT and REVOKE statements).
We introduces two interfaces. Privilege represents a privilege on certain object (e.g. TABLE, VIEW, etc). TablePrivilege represents a privilege on TABLE.
This PR mostly reverts #50 and adds correct implementations for fine-grained access control syntax (
GRANT
andREVOKE
statements).We introduces two interfaces.
Privilege
represents a privilege on certain object (e.g. TABLE, VIEW, etc).TablePrivilege
represents a privilege on TABLE.