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>';
Copy

Ref.: 1734