O Amazon Redshift não permitirá mais a criação de UDFs do Python a partir do Patch 198. As UDFs do Python existentes continuarão a funcionar normalmente até 30 de junho de 2026. Para ter mais informações, consulte a publicação de blog
SHOW GRANTS
Exibe concessões para um usuário, perfil ou objeto. O objeto pode ser um banco de dados, um esquema, uma tabela, uma função ou um modelo. Ao especificar um objeto, como uma tabela ou função, é necessário qualificá-lo com a notação de duas ou três partes. Por exemplo, o schema_name.table_name ou o database_name.schema_name.table_name.
Se SHOW GRANTS produzir mais de 10 mil linhas, o comando vai gerar um erro.
Permissões obrigatórias
Para executar SHOW GRANTS para um usuário ou perfil de destino, o usuário atual deve atender a um dos seguintes critérios:
-
Ser um superusuário.
-
Ser o usuário de destino.
-
Ser o proprietário do perfil de destino.
-
Receber o perfil.
SHOW GRANTS para um objeto de destino exibirá somente concessões visíveis para o usuário atual. Uma concessão ficará visível para o usuário atual se o usuário atual atender a um dos seguintes critérios:
-
Ser um superusuário.
-
Ser o usuário de destino.
-
Receber o título de proprietário do perfil concedido.
-
Receber o perfil pretendido pela concessão do objeto.
Sintaxe
Veja a seguir a sintaxe para mostrar concessões em um objeto. Observe que a segunda forma de especificar uma função só é válida para esquemas externos e bancos de dados criados de uma unidade de compartilhamento de dados.
SHOW GRANTS ON { DATABASE database_name | FUNCTION {database_name.schema_name.function_name | schema_name.function_name } ( [ [ argname ] argtype [, ...] ] ) | FUNCTION {database_name.schema_name.function_name | schema_name.function_name } | SCHEMA {database_name.schema_name | schema_name} | { TABLE {database_name.schema_name.table_name | schema_name.table_name} | table_name } TEMPLATE {database_name.schema_name.template_name | template_name} } [FOR {username | ROLE role_name | PUBLIC}] [LIMIT row_limit]
Veja a seguir a sintaxe para mostrar concessões para um usuário ou perfil.
SHOW GRANTS FOR {username | ROLE role_name} [FROM DATABASE database_name] [LIMIT row_limit]
Parâmetros
- database_name
-
O nome do banco de dados no qual serão mostradas as concessões.
- function_name
-
O nome do perfil para mostrar as concessões.
- template_name
-
O nome do modelo no qual serão mostradas as concessões.
- schema_name
-
O nome do esquema no qual serão mostradas as concessões.
- table_name
-
O nome da tabela na qual serão mostradas as concessões.
- FOR username
-
Indica a exibição de concessões para um usuário.
- FOR ROLE role_name
-
Indica a exibição de subsídios para um perfil.
- FOR PUBLIC
-
Indica a exibição de concessões para PUBLIC.
- row_limit
-
O número máximo de linhas a serem retornadas. O row_limit pode ser de 0 a 10.000.
Exemplos
O exemplo a seguir mostra todas as concessões em um banco de dados chamado dev.
SHOW GRANTS on database demo_db; database_name | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | grantor_name ---------------+----------------+-------------+---------------+---------------+--------------+-----------------+-------------- demo_db | ALTER | 112 | alice | user | f | TABLES | dbadmin demo_db | TRUNCATE | 112 | alice | user | f | TABLES | dbadmin demo_db | DROP | 112 | alice | user | f | TABLES | dbadmin demo_db | INSERT | 112 | alice | user | f | TABLES | dbadmin demo_db | TEMP | 0 | public | public | f | DATABASE | dbadmin demo_db | SELECT | 112 | alice | user | f | TABLES | dbadmin demo_db | UPDATE | 112 | alice | user | f | TABLES | dbadmin demo_db | DELETE | 112 | alice | user | f | TABLES | dbadmin demo_db | REFERENCES | 112 | alice | user | f | TABLES | dbadmin
O comando a seguir mostra todas as concessões em um esquema chamado demo.
SHOW GRANTS ON SCHEMA demo_schema; schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | database_name | grantor_name -------------+-------------+-------------+----------------+-------------+---------------+---------------+--------------+-----------------+---------------+-------------- demo_schema | demo_schema | SCHEMA | ALTER | 112 | alice | user | f | SCHEMA | db1 | dbadmin demo_schema | demo_schema | SCHEMA | DROP | 112 | alice | user | f | SCHEMA | db1 | dbadmin demo_schema | demo_schema | SCHEMA | USAGE | 112 | alice | user | f | SCHEMA | db1 | dbadmin demo_schema | demo_schema | SCHEMA | CREATE | 112 | alice | user | f | SCHEMA | db1 | dbadmin
O comando a seguir mostra todas as concessões para um usuário chamado alice.
SHOW GRANTS FOR alice; database_name | schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | privilege_scope | grantor_name ---------------+-------------+-------------+-------------+----------------+-------------+---------------+---------------+-----------------+-------------- demo_db | | | DATABASE | INSERT | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | SELECT | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | UPDATE | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | DELETE | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | REFERENCES | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | DROP | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | TRUNCATE | 124 | alice | user | TABLES | dbadmin demo_db | | | DATABASE | ALTER | 124 | alice | user | TABLES | dbadmin demo_db | demo_schema | | SCHEMA | USAGE | 124 | alice | user | SCHEMA | dbadmin demo_db | demo_schema | | SCHEMA | CREATE | 124 | alice | user | SCHEMA | dbadmin demo_db | demo_schema | | SCHEMA | DROP | 124 | alice | user | SCHEMA | dbadmin demo_db | demo_schema | | SCHEMA | ALTER | 124 | alice | user | SCHEMA | dbadmin demo_db | demo_schema | t1 | TABLE | INSERT | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | SELECT | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | UPDATE | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | DELETE | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | RULE | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | REFERENCES | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | TRIGGER | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | DROP | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | TRUNCATE | 124 | alice | user | TABLE | dbadmin demo_db | demo_schema | t1 | TABLE | ALTER | 124 | alice | user | TABLE | dbadmin
SHOW GRANTS FOR alice FROM DATABASE second_db; database_name | schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | privilege_scope | grantor_name ---------------+-------------+-------------+-------------+----------------+-------------+---------------+---------------+-----------------+-------------- second_db | public | t22 | TABLE | SELECT | 101 | alice | user | TABLE | dbadmin
O comando a seguir mostra todas as concessões em uma tabela denominada t3 para um usuário chamado alice. Observe que é possível usar a notação de duas ou três partes para especificar o nome da tabela.
SHOW GRANTS ON TABLE demo_db.demo_schema.t3 FOR ALICE; schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | database_name | grantor_name -------------+-------------+-------------+----------------+-------------+---------------+---------------+--------------+-----------------+---------------+-------------- demo_schema | t3 | TABLE | ALTER | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | TRUNCATE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | DROP | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | TRIGGER | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | SELECT | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | INSERT | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | UPDATE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | DELETE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | RULE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | REFERENCES | 130 | alice | user | f | TABLE | demo_db | dbadmin SHOW GRANTS ON TABLE demo_schema.t3 FOR ALICE; schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | database_name | grantor_name -------------+-------------+-------------+----------------+-------------+---------------+---------------+--------------+-----------------+---------------+-------------- demo_schema | t3 | TABLE | ALTER | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | TRUNCATE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | DROP | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | TRIGGER | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | SELECT | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | INSERT | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | UPDATE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | DELETE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | RULE | 130 | alice | user | f | TABLE | demo_db | dbadmin demo_schema | t3 | TABLE | REFERENCES | 130 | alice | user | f | TABLE | demo_db | dbadmin
O exemplo a seguir mostra todas as concessões em uma tabela denominada t4. Observe as diferentes formas de especificar o nome da tabela.
SHOW GRANTS ON t4; schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | database_name | grantor_name -------------+-------------+-------------+----------------+-------------+---------------+---------------+--------------+-----------------+---------------+-------------- public | t4 | TABLE | ALTER | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | TRUNCATE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | DROP | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | TRIGGER | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | SELECT | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | INSERT | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | UPDATE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | DELETE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | RULE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | REFERENCES | 130 | alice | user | f | TABLE | demo_db | dbadmin SHOW GRANTS ON TABLE public.t4; schema_name | object_name | object_type | privilege_type | identity_id | identity_name | identity_type | admin_option | privilege_scope | database_name | grantor_name -------------+-------------+-------------+----------------+-------------+---------------+---------------+--------------+-----------------+---------------+-------------- public | t4 | TABLE | ALTER | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | TRUNCATE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | DROP | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | TRIGGER | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | SELECT | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | INSERT | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | UPDATE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | DELETE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | RULE | 130 | alice | user | f | TABLE | demo_db | dbadmin public | t4 | TABLE | REFERENCES | 130 | alice | user | f | TABLE | demo_db | dbadmin