0.1.2 • Published 6 years ago
@sql-extra/alter-default-privileges v0.1.2
Define default privileges that will be applied to objects created in the future (ALTER DEFAULT PRIVILEGES).
const alterDefaultPrivileges = require('@sql-extra/alter-default-privileges');
// alterDefaultPrivileges.grant([target_role=current role], [in_schema=global], [privileges=ALL], [on=TABLES], [to=PUBLIC])
// alterDefaultPrivileges.revoke([target_role=current role], [in_schema=global], [privileges=ALL], [on=TABLES], [to=PUBLIC], [cascade=default])
// -> SQL query
alterDefaultPrivileges.grant(null, ['myschema'], ['SELECT']);
// ALTER DEFAULT PRIVILEGES IN SCHEMA "myschema" GRANT SELECT ON TABLES TO PUBLIC;
alterDefaultPrivileges.grant(null, ['myschema'], ['INSERT'], 'TABLES', ['webuser']);
// ALTER DEFAULT PRIVILEGES IN SCHEMA "myschema" GRANT INSERT ON TABLES TO "webuser";
alterDefaultPrivileges.revoke(null, ['myschema'], ['SELECT']);
// ALTER DEFAULT PRIVILEGES IN SCHEMA "myschema" REVOKE SELECT ON TABLES FROM PUBLIC;
alterDefaultPrivileges.revoke(null, ['myschema'], ['INSERT'], 'TABLES', ['webuser']);
// ALTER DEFAULT PRIVILEGES IN SCHEMA "myschema" REVOKE INSERT ON TABLES FROM webuser;
alterDefaultPrivileges.revoke(['admin'], null, ['EXECUTE'], 'FUNCTIONS');
// ALTER DEFAULT PRIVILEGES FOR ROLE "admin" REVOKE EXECUTE ON FUNCTIONS FROM PUBLIC;