Práticas recomendadas para espaços de trabalho compartilhados¶
As recomendações a seguir detalham como os administradores podem planejar, configurar e manter os espaços de trabalho compartilhados com eficácia.
Planejamento e configuração de espaços de trabalho compartilhados¶
Os espaços de trabalho compartilhados são criados como objetos no nível do esquema em um banco de dados padrão e seguem o modelo de controle de acesso com base em função (Role-Based Access Control, RBAC) existente do Snowflake.
Para criar um espaço de trabalho compartilhado, os usuários devem ser proprietários do esquema de destino ou ter os seguintes privilégios:
USAGE no banco de dados e no esquema
CREATE WORKSPACE no esquema
Concessão de privilégios de criação¶
Como administrador, para conceder os privilégios necessários no nível do esquema a um usuário, execute o seguinte comando:
GRANT USAGE ON DATABASE <database_name>.<schema_name> TO ROLE <role_name>; GRANT CREATE WORKSPACE ON SCHEMA <database_name>.<schema_name> TO ROLE <role_name>;
Copy
Comandos de gerenciamento de espaço de trabalho¶
Use os seguintes comandos para monitorar e gerenciar o acesso aos espaços de trabalho compartilhados existentes:
Ação |
Sintaxe |
|---|---|
Listar todos os espaços de trabalho |
|
Exibir as permissões do espaço de trabalho |
|
Conceder permissões de edição |
|
Revogar permissões de edição |
|
Exemplo
GRANT WRITE ON WORKSPACE my_workspace;
REVOKE WRITE ON WORKSPACE my_workspace;
Práticas recomendadas de governança¶
Ao habilitar espaços de trabalho compartilhados em sua conta, considere as seguintes práticas recomendadas:
Planejamento intencional: alinhe os espaços de trabalho compartilhados a equipes, projetos ou casos de uso específicos. Espaços de trabalho bem definidos e em menor número reduzem a sobrecarga e a confusão para o usuário.
Limitação dos privilégios de criação: restrinja os privilégios CREATE WORKSPACE às funções de administrador designadas e os proprietários de esquema. A concessão ampla desse privilégio pode levar a duplicação desnecessária ou expansão do espaço de trabalho.
Monitoramento do ciclo de vida do espaço de trabalho: revise periodicamente os espaços de trabalho compartilhados existentes e desative os que estão obsoletos ou não são utilizados. Estabeleça um processo de revisão simples (por exemplo, trimestral) para garantir que apenas os espaços de trabalho ativos e relevantes permaneçam disponíveis.
Modelos organizacionais¶
Os administradores podem estruturar espaços de trabalho compartilhados de diferentes maneiras, dependendo do modelo de colaboração da organização.
Hub de colaboração centralizado¶
Um único banco de dados e um esquema dedicado aos espaços de trabalho compartilhados para todas as equipes oferecem um local consistente para a colaboração entre equipes.
Exemplo de configuração
CREATE DATABASE IF NOT EXISTS SHARED_WORKSPACES_DB;
CREATE SCHEMA IF NOT EXISTS SHARED_WORKSPACES_SCHEMA;
GRANT USAGE ON DATABASE SHARED_WORKSPACES_DB.SHARED_WORKSPACES_SCHEMA TO ROLE WORKSPACES_STEWARDS;
GRANT CREATE WORKSPACE ON SCHEMA SHARED_WORKSPACES_DB.SHARED_WORKSPACES_SCHEMA TO ROLE WORKSPACES_STEWARDS;
Espaços de trabalho com escopo da equipe¶
Cada equipe tem o próprio banco de dados ou esquema e gerencia os espaços de trabalho compartilhados dentro do escopo. Esse modelo é ideal para organizações que já alinham bancos de dados e funções por departamento, disciplina ou unidade de negócios.
Abordagem híbrida¶
Use um esquema central combinado para projetos entre equipes ou de alta visibilidade com esquemas específicos da equipe para colaboração diária. Esse modelo equilibra flexibilidade com governança centralizada e capacidade de descoberta.
Considerações sobre design de função e gerenciamento de acesso¶
Os espaços de trabalho compartilhados só podem ser compartilhados com funções (não com usuários individuais).
A maioria das organizações pode usar as funções existentes para gerenciar o acesso. Evite criar novas funções apenas para espaços de trabalho compartilhados, a menos que seja necessário.
Práticas recomendadas¶
Use funções existentes que já representam uma associação ou função da equipe.
Atribua uma função de administrador designada responsável por gerenciar o acesso e manter a estrutura do local de trabalho.
Adoção e manutenção¶
Convenções de nomeação: para melhorar a capacidade de descoberta, use padrões claros e consistentes, como
TEAM_PROJECT_NAME.Propriedade: atribua uma função de administrador ou proprietário a cada espaço de trabalho compartilhado para garantir a responsabilidade.
Documentação: mantenha um diretório interno ou wiki que lista os espaços de trabalho compartilhados ativos e a finalidade pretendida deles.
Consistência: incentive os usuários a mudar dos espaços de trabalho privados para compartilhados quando o código ou as consultas estiverem prontas para colaboração.
Revisão regular: faça auditorias periódicas de funções, esquemas e espaços de trabalho compartilhados para garantir que permaneçam alinhados às políticas organizacionais e estruturas de equipe.