Novo privilégio MANAGE SHARE TARGET substitui CREATE SHARE para adicionar contas a compartilhamentos¶
Atenção
Essa mudança de comportamento está no pacote 2024_07.
Para saber o status atual do pacote, consulte Histórico do pacote.
A Snowflake apresenta um novo privilégio chamado MANAGE SHARE TARGET. O privilégio MANAGE SHARE TARGET é concedido em uma conta para uma função. Uma função que recebeu esse privilégio pode ser usada para adicionar ou remover destinos de qualquer compartilhamento na conta onde a função tem o privilégio. Um destino de compartilhamento refere-se a uma conta ou usuário com acesso aos dados compartilhados. Pense nesses destinos como o “público alvo” do compartilhamento. Esse novo privilégio aumenta a segurança e o controle ao permitir que as organizações atribuam privilégios específicos com base em funções.
- Antes da mudança:
O privilégio CREATE SHARE existente é usado para criar compartilhamentos e gerenciar destinos de compartilhamento (adicionar contas a um compartilhamento).
Se uma função receber o privilégio CREATE SHARE, ela poderá criar compartilhamentos e gerenciar destinos de compartilhamento.
- Após a mudança:
O privilégio CREATE SHARE existente é usado apenas para criar compartilhamentos, não para gerenciar destinos de compartilhamento.
O privilégio MANAGE SHARE TARGET é usado para gerenciar destinos de compartilhamento (adicionar e remover contas que podem acessar um compartilhamento).
Depois que esse pacote de mudança de comportamento for habilitado, as funções com CREATE SHARE receberão automaticamente MANAGE SHARE TARGET para garantir a compatibilidade.
Prepare-se para a mudança
Você será afetado por essa alteração se anteriormente tiver concedido CREATE SHARE a uma função não ACCOUNTADMIN para gerenciar destinos de compartilhamento. Os clientes devem revisar e atualizar quaisquer automações que dependam de CREATE SHARE gerenciamento de contas.
USAGE¶
GRANT MANAGE SHARE TARGET ON ACCOUNT TO ROLE <role-name>;
GRANT ROLE <role-name> TO USER <user_name>;
USE ROLE <role-name>;
ALTER SHARE <data_share_name> ADD ACCOUNTS = '<account_name_1>', '<account_name_2>';
Ref.: 1734