Difference between revisions of "Amazon Redshift: GRANT"
Jump to navigation
Jump to search
Line 12: | Line 12: | ||
[[has_table_privilege]] | [[has_table_privilege]] | ||
− | + | ||
− | SELECT | + | SELECT |
− | + | u.usename, | |
− | + | s.schemaname, | |
− | + | has_schema_privilege(u.usename,s.schemaname,'create') AS user_has_select_permission, | |
− | + | has_schema_privilege(u.usename,s.schemaname,'usage') AS user_has_usage_permission | |
− | FROM | + | FROM |
− | + | [[pg_user]] u | |
− | CROSS JOIN | + | CROSS JOIN |
− | + | (SELECT DISTINCT schemaname FROM pg_tables) s | |
− | WHERE | + | WHERE |
− | + | u.usename = 'myUserName' | |
− | + | AND s.schemaname = 'mySchemaName' | |
− | ; | + | ; |
− | + | ||
Ref: https://chartio.com/learn/amazon-redshift/how-to-view-permissions-in-amazon-redshift/ | Ref: https://chartio.com/learn/amazon-redshift/how-to-view-permissions-in-amazon-redshift/ | ||
Revision as of 10:51, 12 November 2021
GRANT USAGE ON { DATABASE shared_database_name [, ...] | SCHEMA shared_schema} TO { username | GROUP group_name | PUBLIC } [, ...]
Schema level permissions
- USAGE: Allows users to access objects in the schema. User still needs specific table-level permissions for each table within the schema
- CREATE: Allows users to create objects within a schema using CREATE statement
Show permissions
has_table_privilege
SELECT u.usename, s.schemaname, has_schema_privilege(u.usename,s.schemaname,'create') AS user_has_select_permission, has_schema_privilege(u.usename,s.schemaname,'usage') AS user_has_usage_permission FROM pg_user u CROSS JOIN (SELECT DISTINCT schemaname FROM pg_tables) s WHERE u.usename = 'myUserName' AND s.schemaname = 'mySchemaName' ;
Ref: https://chartio.com/learn/amazon-redshift/how-to-view-permissions-in-amazon-redshift/
See also
Advertising: