Gerenciamento de usuários¶
Os administradores de usuários podem criar e gerenciar usuários do Snowflake por meio do SQL ou da interface da Web:
Usando SQL, os administradores podem realizar todas as tarefas relacionadas ao usuário, incluindo a mudança de credenciais de login e padrões dos usuários.
Snowsight oferece suporte à maioria das tarefas relacionadas ao usuário.
Classic Console não oferece suporte a todas as tarefas relacionadas ao usuário, mas fornece um assistente para criar usuários e realizar as atividades mais comuns, como redefinir a senha de um usuário.
Neste tópico:
Privilégios necessários para criar e modificar usuários¶
Os seguintes privilégios ou funções são necessários para gerenciar os usuários em sua conta:
- Criação de usuários:
A função USERADMIN do sistema pode criar usuários usando SQL (CREATE USER).
Se você preferir usar uma função personalizada para essa finalidade, conceda a essa função o privilégio CREATE USER sobre a conta.
- Modificação de usuários:
Somente a função com o privilégio OWNERSHIP sobre um usuário, ou uma função superior, pode modificar a maioria das propriedades do usuário usando SQL (ALTER USER). Além disso, a função deve ter o privilégio global CREATE USER.
Políticas de senhas¶
Uma política de senhas especifica os requisitos que devem ser atendidos para criar e redefinir uma senha para autenticação no Snowflake.
Snowflake oferece duas opções para políticas de senhas:
Uma política de senhas integrada para facilitar o processo inicial de provisionamento do usuário.
Um objeto de política de senhas no nível do esquema que pode ser definido no nível da conta Snowflake, um usuário individual, ou ambos, dependendo dos casos de uso e das necessidades do administrador do usuário.
Para obter mais detalhes sobre as práticas recomendadas e cada uma das opções de política de senhas, consulte:
Práticas recomendadas para políticas de senhas e senhas¶
Snowflake recomenda as seguintes práticas recomendadas com relação a senhas e políticas de senhas:
- Criação e aplicação da política de senhas personalizada
O objeto da política de senhas é aplicado uma vez que a política de senhas seja definida em uma conta ou usuário.
Configure essas propriedades com valores que atendam às suas necessidades de segurança interna. Para obter mais detalhes, consulte Passo 4: criar uma política de senhas (neste tópico):
PASSWORD_HISTORY
para garantir que os usuários não possam reutilizar senhas com muita frequência e para ajudar a evitar ataques de força bruta para determinar a senha de um usuário.PASSWORD_MIN_AGE_DAYS
para exigir que o usuário use a nova senha. Um valor 0 não é recomendado porque o usuário pode alterar a senha para esgotar o histórico de senha e reutilizar o valor da senha original muito cedo.
Para exigir que o usuário altere sua senha para cumprir a política de senhas em seu login inicial ou no próximo login ao Snowflake, defina a propriedade
MUST_CHANGE_PASSWORD
no usuário comoTRUE
usando um comando ALTER USER.Para obter mais detalhes, consulte Etapa 6: exigir uma alteração de senha (neste tópico).
- Exigência de senhas fortes
Definir uma política de senhas em nível de conta para exigir senhas fortes.
Uma senha forte tem pelo menos 8 caracteres e inclui uma combinação de letras maiúsculas e minúsculas, caracteres especiais (por exemplo,
!
e*
) e números.- MFA
Use Autenticação multifator (MFA) para segurança adicional.
- Uso de SCIM
Você pode definir uma senha para o usuário acessar o Snowflake em uma solicitação do API SCIM. Administradores de SCIM e administradores de usuários devem escolher gerenciar a senha do usuário para acessar o Snowflake em seu provedor de identidade ou usando uma política de senhas no Snowflake.
Atualmente, os usuários provisionados para o Snowflake com SCIM são obrigados a ter sua senha de acordo com a política de senhas padrão Snowflake. Este requisito pode ser contornado se você optar por usar este recurso de política de senhas.
Para contornar a exigência padrão da política de senhas, siga as instruções na seção Uso de políticas de senhas (neste tópico).
- Monitoramento de senhas
Para monitorar as senhas:
Consulte a exibição do Snowflake Account Usage USERS para determinar se o valor da coluna
HAS_PASSWORD
retornaTRUE
para um determinado usuário.Consulte a exibição do Snowflake Account Usage LOGIN_HISTORY e avalie a coluna
FIRST_AUTHENTICATION_FACTOR
. Se um usuário não exigir uma senha para acessar o Snowflake, execute um comando ALTER USER para definir a propriedadepassword
como NULL.
Política de senhas fornecida pela Snowflake¶
Uma senha pode ser qualquer cadeia de caracteres que diferencia maiúsculas de minúsculas e com até 256 caracteres, incluindo espaços em branco e caracteres especiais (isto é, não alfanuméricos), tais como pontos de exclamação (!
), sinais de porcentagem (%
) e asteriscos (*
).
Durante a criação de usuário inicial, é possível definir uma senha fraca para o usuário que não esteja de acordo com os requisitos mínimos descritos abaixo (por exemplo, 'test12345'
). Esse recurso permite que os administradores usem senhas genéricas para o usuário durante o processo de criação. Se esse caminho for escolhido, a Snowflake recomenda fortemente que você configure a propriedade MUST_CHANGE_PASSWORD
como TRUE
para exigir que os usuários mudem sua senha no próximo login, incluindo o login inicial, no Snowflake.
Além disso, o Snowflake permite criar usuários sem uma senha inicial para oferecer suporte a processos comerciais nos quais novos usuários não estão autorizados a entrar no sistema. Se isso ocorrer, o valor da propriedade PASSWORD
do usuário será NULL
. Entretanto, como regra geral, o Snowflake espera que os usuários sejam criados com senhas iniciais.
No contexto de redefinir uma senha existente (por exemplo, mudar 'test12345'
para 'q@-*DaC2yjZoq3Re4JYX'
), o Snowflake aplica a seguinte política de senhas como um requisito mínimo ao usar o comando ALTER USER e a interface da Web:
Deve ter pelo menos 8 caracteres.
Deve conter pelo menos 1 dígito.
Deve conter pelo menos 1 letra maiúscula e 1 letra minúscula.
A Snowflake recomenda fortemente as seguintes diretrizes para criar as senhas mais fortes possíveis:
Crie uma senha única para o Snowflake (ou seja, não reutilize senhas de outros sistemas ou contas).
Use mais de 8 caracteres.
Inclua letras maiúsculas e minúsculas, números e caracteres especiais, incluindo espaços em branco.
Não use senhas, nomes, números ou datas comuns e fáceis de adivinhar.
Por fim, para configurar o mais alto nível de segurança para o login de usuário, a Snowflake recomenda que os usuários se inscrevam em MFA.
Política de senhas personalizada para a conta e usuários¶
A política de senhas personalizada é um objeto em nível de esquema que especifica os requisitos que devem ser atendidos para criar e redefinir uma senha de autenticação no Snowflake, incluindo o número de tentativas de inserir a senha com sucesso e o número de minutos antes que uma senha possa ser novamente testada (ou seja, o tempo de bloqueio).
Os requisitos da política de senhas para uma senha incluem letras maiúsculas ou minúsculas, caracteres especiais, números e comprimento de senha para atender aos requisitos de segurança para usuários e clientes durante a autenticação no Snowflake. As políticas de senhas que exigem senhas fortes ajudam a cumprir as diretrizes e regulamentos de segurança.
A Snowflake oferece suporte à definição de uma política de senhas para sua conta Snowflake e para usuários individuais. Apenas uma política de senhas pode ser definida a qualquer momento para sua conta Snowflake ou para um usuário. Se existir uma política de senhas para a conta Snowflake e outra política de senhas for definida para um usuário na mesma conta Snowflake, a política de senhas no nível de usuário tem precedência sobre a política de senha no nível de conta.
A política de senhas se aplica às novas senhas definidas em sua conta Snowflake. Para garantir que os usuários com senhas existentes atendam às exigências da política de senhas, exija que os usuários mudem sua senha durante seu próximo login no Snowflake como mostrado em Etapa 6: exigir uma alteração de senha (neste tópico).
Nota
Cada parâmetro da política de senhas requer uma instrução ALTER USER para definir a propriedade MUST_CHANGE_PASSWORD
como TRUE
para exigir que o usuário atualize sua senha para cumprir o valor do parâmetro da política de senhas no próximo login no Snowflake.
No entanto, os seguintes parâmetros são exceções:
PASSWORD_MAX_AGE_DAYS = integer
PASSWORD_MAX_AGE_DAYS = integer
PASSWORD_LOCKOUT_TIME_MINS = integer
Estes parâmetros são com estado. Um parâmetro com estado significa que o valor do parâmetro se torna efetivo assim que o comando termina a execução. Não é necessário executar um comando ALTER USER … SET MUST_CHANGE_PASSWORD se sua instrução CREATE PASSWORD POLICY ou ALTER PASSWORD POLICY contiver apenas um ou mais parâmetros com estado.
Note que a alteração de um valor de parâmetro de estado com um comando ALTER PASSWORD POLICY não afeta a sessão atual. Por exemplo, se você alterar o valor do parâmetro PASSWORD_MAX_AGE_DAYS
para um número que faz com que a senha atual do usuário expire, no próximo login no Snowflake o usuário mudará sua senha. Snowflake não forçará o usuário a mudar sua senha em sua sessão atual.
Considerações¶
Concessões futuras de privilégios em políticas de senhas não são suportadas.
Como alternativa, conceda o privilégio APPLYPASSWORD POLICY a uma função personalizada para permitir que esta função aplique políticas de senhas no usuário ou conta Snowflake.
A política de senhas pode ser gerenciada com SQL usando SnowSQL ou um driver ou conector suportado, ou ainda no Worksheets usando Classic Console ou Snowsight.
Reinicialização ou troca de uma senha:
Classic Console, SnowSQL e conectores e drivers suportados:
Ao executar um comando ALTER USER ou usar a Classic Console para redefinir ou alterar uma senha, Snowflake avalia a política de senhas para assegurar que a senha recém-criada corresponda aos requisitos da política de senhas.
Rastreamento do uso da política de senhas:
Consulte a exibição PASSWORD_POLICIES do Account Usage para retornar uma linha para cada política de senhas em sua conta Snowflake.
Use a função de tabela do Information Schema POLICY_REFERENCES para retornar uma linha para cada usuário que é atribuído à política de senhas especificada e uma linha para a política de senhas atribuída à conta Snowflake.
Atualmente, apenas a seguinte sintaxe é suportada para as políticas de senhas:
POLICY_REFERENCES( POLICY_NAME => '<password_policy_name>' )
Onde
password_policy_name
é o nome totalmente qualificado da política de senhas.Por exemplo, execute a seguinte consulta para retornar uma linha para cada usuário ao qual é atribuída a política de senhas chamada
password_policy_prod_1
, que é armazenada no banco de dados chamadomy_db
e o esquema chamadomy_schema
:SELECT * FROM TABLE( my_db.information_schema.policy_references( POLICY_NAME => 'my_db.my_schema.password_policy_prod_1' ) );
Uso de políticas de senhas¶
Os passos seguintes são um guia representativo para definir e estabelecer uma política de senhas no Snowflake.
Esses passos pressupõem uma abordagem de gerenciamento centralizado no qual uma função personalizada chamada policy_admin
possui a política da senhas (ou seja, tem o privilégio OWNERSHIP da política da senhas) e é responsável por definir a política de senhas em uma conta ou usuário (ou seja, tem o privilégio global APPLY PASSWORD POLICY, conforme mostrado na etapa 2).
Nota
Para definir uma política em uma conta, a função personalizada policy_admin
também deve ter o privilégio USAGE no banco de dados e esquema que contém a política de senhas.
Para obter mais informações, consulte: Privilégios de controle de acesso
Passo 1: criar a função personalizada¶
Crie uma função personalizada que permita criar e gerenciar políticas de senhas. Ao longo deste tópico, a função personalizada de exemplo é denominada policy_admin
, embora a função possa ter qualquer nome apropriado.
Se a função personalizada já existir, continue para o próximo passo.
Caso contrário, crie a função personalizada policy_admin
.
USE ROLE USERADMIN; CREATE ROLE policy_admin;
Passo 2: conceder privilégios à função personalizada¶
Se a função personalizada policy_admin
ainda não tiver os seguintes privilégios, conceda-os como mostrado abaixo:
USAGE no banco de dados e no esquema que conterá a política de senhas.
CREATE PASSWORD POLICY no esquema que irá armazenar a política de senhas.
APPLY PASSWORD POLICY na conta.
USE ROLE SECURITYADMIN;
GRANT USAGE ON DATABASE security TO ROLE policy_admin;
GRANT USAGE ON SCHEMA security.policies TO ROLE policy_admin;
GRANT CREATE PASSWORD POLICY ON SCHEMA security.policies TO ROLE policy_admin;
GRANT APPLY PASSWORD POLICY ON ACCOUNT TO ROLE policy_admin;
Se você decidir definir uma política de senhas para um usuário, conceda o privilégio APPLY PASSWORD POLICY ao usuário. Por exemplo, se o nome de usuário for JSMITH
, execute o seguinte comando.
GRANT APPLY PASSWORD POLICY ON USER jsmith TO ROLE policy_admin;
Para obter mais informações, consulte Resumo de comandos DDL, operações e privilégios.
Etapa 3: conceder a função personalizada a um usuário¶
Conceder a função personalizada policy_admin
aos usuários responsáveis pelo gerenciamento das políticas de senhas.
USE ROLE SECURITYADMIN;
GRANT ROLE policy_admin TO USER jsmith;
Para obter mais informações, consulte Configuração do controle de acesso
Passo 4: criar uma política de senhas¶
Usando a função policy_admin
personalizada, crie uma política de senhas chamada password_policy_prod_1
. Para obter mais informações, consulte CREATE PASSWORD POLICY.
USE ROLE policy_admin; USE SCHEMA security.policies; CREATE PASSWORD POLICY PASSWORD_POLICY_PROD_1 PASSWORD_MIN_LENGTH = 12 PASSWORD_MAX_LENGTH = 24 PASSWORD_MIN_UPPER_CASE_CHARS = 2 PASSWORD_MIN_LOWER_CASE_CHARS = 2 PASSWORD_MIN_NUMERIC_CHARS = 2 PASSWORD_MIN_SPECIAL_CHARS = 2 PASSWORD_MIN_AGE_DAYS = 1 PASSWORD_MAX_AGE_DAYS = 999 PASSWORD_MAX_RETRIES = 3 PASSWORD_LOCKOUT_TIME_MINS = 30 PASSWORD_HISTORY = 5 COMMENT = 'production account password policy';Nota
A propriedade
PASSWORD_MAX_AGE_DAYS
é definida como o maior valor, 999. Escolha um valor que se alinhe com suas diretrizes internas. Para obter mais detalhes, consulte CREATE PASSWORD POLICY.
Passo 5: definir a política de senhas para a conta ou usuário¶
Defina a política em uma conta com o comando ALTER ACCOUNT:
ALTER ACCOUNT SET PASSWORD POLICY security.policies.password_policy_prod_1;
Se você decidir criar uma política de senhas adicional para um ou mais usuários, defina a política de senhas no nível de usuário em um usuário com um comando ALTER USER:
ALTER USER jsmith SET PASSWORD POLICY security.policies.password_policy_user;
Importante
Para substituir uma política de senhas que já esteja definida para uma conta ou usuário, primeiro desative a política de senhas e depois defina a nova política de senhas para a conta ou usuário. Por exemplo:
ALTER ACCOUNT UNSET PASSWORD POLICY; ALTER ACCOUNT SET PASSWORD POLICY security.policies.password_policy_prod_2;
Etapa 6: exigir uma alteração de senha¶
Defina a propriedade MUST_CHANGE_PASSWORD
como TRUE
para usuários individuais usando uma instrução ALTER USER para exigir que os usuários mudem sua senha para cumprir a política de senhas em seu próximo login para Snowflake.
ALTER USER JSMITH SET MUST_CHANGE_PASSWORD = true;
Etapa 7: replicar a política de senhas para uma conta de destino¶
Uma política de senhas e suas referências (ou seja, atribuições a um usuário ou à conta) podem ser replicadas da conta de origem para a conta de destino usando replicação de banco de dados e replicação de conta. Para obter mais detalhes, consulte:
Gerenciamento de políticas de senhas¶
Snowflake fornece o seguinte conjunto de privilégios e DDL para gerenciar as políticas de senhas:
O Snowflake fornece os seguintes comandos DDL para gerenciar os objetos da política de senhas:
Observe que operar em qualquer objeto de um esquema também requer o privilégio USAGE no banco de dados e esquema principais.
Privilégio |
Uso |
---|---|
CREATE PASSWORD POLICY |
Permite a criação de uma nova política de senhas. |
APPLY PASSWORD POLICY |
Permite aplicar uma política de senhas no nível de conta ou de usuário. |
OWNERSHIP |
Concede controle total sobre a política de senhas. Necessário para alterar a maioria das propriedades de uma política de senhas. |
Resumo de comandos DDL, operações e privilégios¶
A seguinte tabela resume a relação entre as operações DDL da política de senhas e seus privilégios necessários.
Observe que operar em qualquer objeto de um esquema também requer o privilégio USAGE no banco de dados e esquema principais.
Operação |
Privilégio necessário |
---|---|
Criação da política de senhas |
Uma função com o privilégio CREATE PASSWORD POLICY no esquema para armazenar a política de senhas. |
Alteração da política de senhas |
Uma função com o privilégio OWNERSHIP na política de senhas. |
Descarte da política de senhas |
Uma função com o privilégio OWNERSHIP na política de senhas. |
Descrição da política de senhas |
Uma função com o privilégio OWNERSHIP na política de senhas ou . o privilégio APPLY PASSWORD POLICY na conta. |
Exibição das políticas de senhas |
Uma função com o privilégio OWNERSHIP na política de senhas ou . o privilégio APPLY PASSWORD POLICY na conta. |
Definição e cancelamento da política de senhas |
Uma função com o privilégio APPLY PASSWORD POLICY na conta ou usuário. |
Funções do usuário¶
O Snowflake usa funções para controlar os objetos (warehouses virtuais, bancos de dados, tabelas, etc.) que os usuários podem acessar:
O Snowflake fornece um conjunto de funções pré-definidas, bem como uma estrutura para definir uma hierarquia de funções personalizadas.
Todos os usuários do Snowflake recebem automaticamente a função PUBLIC predefinida, que permite o login no Snowflake e o acesso básico ao objeto.
Além da função PUBLIC, cada usuário pode receber funções adicionais, com uma dessas funções designada como função padrão. A função padrão de um usuário determina a função usada nas sessões do Snowflake iniciadas pelo usuário; no entanto, isso é apenas um padrão. Os usuários podem alterar as funções dentro de uma sessão a qualquer momento.
As funções podem ser atribuídas na criação do usuário ou posteriormente.
Atenção
Ao decidir as funções adicionais a serem atribuídas a um usuário, bem como ao designar sua função padrão, considere o seguinte para a função predefinida ACCOUNTADMIN (necessária para executar tarefas administrativas no nível da conta):
A Snowflake recomenda controlar estritamente a atribuição de ACCOUNTADMIN, mas recomenda atribuir a pelo menos dois usuários.
ACCOUNTADMIN não deve nunca ser designado como a função padrão do usuário. Em vez disso, designe uma função administrativa de nível mais baixo ou personalizada como o padrão.
Para obter mais detalhes e práticas recomendadas relacionadas à função ACCOUNTADMIN, consulte Considerações sobre o controle de acesso. Para mais informações gerais sobre as funções, consulte Visão geral do controle de acesso.
Criação de usuários¶
Você pode criar um usuário usando Snowsight, Classic Console ou SQL.
Nota
A interface da Web, não importa se você usa Classic Console ou Snowsight, exige que você especifique uma senha ao criar um usuário. O comando CREATE USER não faz isso.
Para obter mais informações sobre senhas no Snowflake, consulte Políticas de senhas (neste tópico)
Como usar o Snowsight¶
Entre em Snowsight.
Selecione Admin » Users & Roles.
Selecione + User.
No campo User Name, digite um identificador único para o usuário. O usuário usa esse identificador para entrar no Snowflake, a menos que você especifique um nome de login.
Opcionalmente, especifique um endereço de e-mail para o usuário no campo Email.
Nos campos Password e Confirm Password, digite a senha para o usuário.
Opcionalmente, adicione um comentário explicando por que você criou o usuário.
Deixe a caixa de seleção Force user to change password on first time login marcada para forçar o usuário a alterar sua senha ao entrar.
Opcionalmente selecione Advanced User Options para especificar detalhes adicionais sobre o usuário:
Login Name para usar em vez do User Name ao entrar no Snowflake.
Display Name que aparece após o login.
First Name e Last Name para completar o perfil do usuário.
Default Role, Default Warehouse e Default Namespace.
Selecione Create User.
Uso do console clássico¶
Selecione Create.
No campo User Name, digite um identificador único para o usuário.
Nota
O nome de usuário é o identificador único para o usuário no Snowflake. Ele não é o nome de login do usuário (ou seja, o nome que o usuário usa para fazer login no Snowflake). O Snowflake permite que os usuários tenham nomes de usuário e nomes de login diferentes, se desejarem. O usuário especifica um nome de login para o usuário na tela seguinte.
Nos campos Password e Confirm Password, digite a senha para o usuário.
Deixe a caixa de seleção Force Password Change selecionada para forçar o usuário a alterar sua senha em seu próximo login; caso contrário, desmarque a caixa de seleção.
Selecione Next. A tela Advanced é aberta.
Opcionalmente, insira o Login Name, Display Name e informações pessoais do usuário.
Nota
Os usuários precisam de um nome de login para entrar no Snowflake; se você não fornecer explicitamente um nome de login, o Snowflake usa seu nome de usuário como nome de login.
Selecione Next. A tela Preferences é aberta.
Opcionalmente, insira os valores padrão para o usuário:
Warehouse virtual
Namespace na forma de
db_name
oudb_name.schema_name
Função
Selecione Finish. O Snowflake exibe uma mensagem de sucesso.
Uso de SQL¶
Use o comando CREATE USER para criar um usuário.
Importante
Ao criar um usuário, se você atribuir uma função padrão ao usuário, você deve então conceder explicitamente essa função ao usuário. Por exemplo:
CREATE USER janesmith PASSWORD = 'abc123' DEFAULT_ROLE = myrole MUST_CHANGE_PASSWORD = TRUE; GRANT ROLE myrole TO USER janesmith;
Note que o comando GRANT ROLE permite atribuir várias funções a um único usuário. A interface da Web não oferece suporte atualmente à mesma capacidade.
Redefinição da senha para um usuário¶
Os administradores podem mudar a senha de um usuário por meio da interface da Web ou usando SQL.
Como usar o Snowsight¶
Uso do console clássico¶
Nota
Os usuários só podem mudar sua própria senha por meio da Classic Console. Para obter mais informações, consulte Alteração de senha/Troca de função (sessão)/Logout.
Clique em uma linha de usuário para selecioná-la e selecione Reset Password. A caixa de diálogo Reset Password é aberta.
Digite a nova senha para o usuário e confirme a senha.
Deixe a caixa de seleção Force Password Change selecionada para forçar o usuário a alterar sua senha em seu próximo login; caso contrário, desmarque a caixa de seleção.
Selecione Finish.
Uso de SQL¶
Use o comando ALTER USER para inserir a senha de um usuário. Por exemplo:
ALTER USER janesmith SET PASSWORD = 'H8MZRqa8gEe/kvHzvJ+Giq94DuCYoQXmfbb$Xnt' MUST_CHANGE_PASSWORD = TRUE;
Alternativamente, use a sintaxe ALTER USER … RESET PASSWORD para gerar um URL para compartilhar com o usuário. O URL abre uma página da Web na qual o usuário pode inserir a nova senha. Por exemplo:
ALTER USER janesmith RESET PASSWORD;Nota
O URL gerado é válido para um único uso e expira após 4 horas.
Executar a instrução ALTER USER … RESET PASSWORD não invalida a senha atual. O usuário pode continuar usando a senha antiga até que a nova senha seja definida.
Redefinição da senha para um administrador¶
Um administrador de conta (ou seja, um usuário com a função ACCOUNTADMIN) pode redefinir sua própria senha usando o procedimento descrito em Redefinição da senha para um usuário.
Se um administrador de conta for bloqueado de sua conta, um usuário diferente com a função ACCOUNTADMIN pode redefinir a senha para o administrador bloqueado. Caso o administrador esteja bloqueado e não haja outro administrador para alterar a senha, entre em contato com o suporte Snowflake para redefinir a senha.
Desativação da funcionalidade de mudança de senha para usuários¶
Os usuários alteram sua senha Snowflake na interface da Web clicando no menu suspenso no canto superior direito (ao lado do nome de login) » Change Password. A caixa de diálogo Select a New Password é aberta. A caixa de diálogo aceita a senha atual e a nova senha.
Opcionalmente, você pode desativar a possibilidade de os usuários de sua conta alterarem a própria senha. Os administradores de conta podem continuar alterando as senhas de usuários por meio da interface da Web em Account » Users ou do comando SQL ALTER USER.
Para solicitar essa alteração, entre em contato com o suporte Snowflake.
Desativação ou ativação de um usuário¶
A desativação de um usuário impede que ele faça login no Snowflake. Você pode desabilitar um usuário por meio da interface da Web ou usando SQL.
Como usar o Snowsight¶
Entre em Snowsight.
Selecione Admin » Users & Roles.
Localize o usuário que deseja desativar e selecione » Disable User.
Na caixa de diálogo de confirmação que se abre, selecione Disable.
Para ativar um usuário, siga as mesmas etapas, mas clique no botão Enable User.
Uso do console clássico¶
Clique em uma linha de usuário para selecioná-lo e, em seguida, clique no botão Disable User. Uma caixa de diálogo de confirmação é aberta.
Clique em Yes para desabilitar o usuário.
Para ativar um usuário, siga as mesmas etapas, mas clique no botão Enable User.
Uso de SQL¶
Use o comando ALTER USER para desabilitar ou habilitar um usuário. Por exemplo:
Desabilitar um usuário:
ALTER USER janesmith SET DISABLED = TRUE;
Habilitar um usuário:
ALTER USER janesmith SET DISABLED = FALSE;
Desbloqueio de um usuário¶
Se um login de usuário falhar após cinco tentativas consecutivas, o usuário é bloqueado por um tempo (atualmente 15 minutos) sem acesso a sua conta. Uma vez decorrido o período, o sistema remove automaticamente o bloqueio e o usuário pode tentar fazer login novamente no sistema.
Para desbloquear o usuário antes que o tempo tenha transcorrido, você pode reiniciar o temporizador usando o comando ALTER USER.
O exemplo a seguir reinicia o temporizador, para 0, o que imediatamente desbloqueia o usuário janesmith
:
ALTER USER janesmith SET MINS_TO_UNLOCK= 0;
Dica
Se uma única função tem o privilégio OWNERSHIP sobre todos os usuários do Snowflake, recomendamos a concessão da função a múltiplos usuários. Dessa forma, se um membro da função for bloqueado, outro membro pode desbloquear esse usuário.
Alteração dos parâmetros de sessão de um usuário¶
Para mostrar os parâmetros de sessão de um usuário, use a seguinte sintaxe SQL:
SHOW PARAMETERS [ LIKE '<pattern>' ] FOR USER <name>
Para alterar os parâmetros de sessão de um usuário, use a seguinte sintaxe:
ALTER USER <name> SET <session_param> = <value>
Por exemplo, permitir que um usuário permaneça conectado ao Snowflake indefinidamente sem atingir o tempo limite:
ALTER USER janesmith SET CLIENT_SESSION_KEEP_ALIVE = TRUE;
Para redefinir um parâmetro de sessão para um usuário para o valor padrão, use a seguinte sintaxe:
ALTER USER <name> UNSET <session_param>
Modificação de outras propriedades do usuário¶
Você pode modificar todas as outras propriedades do usuário usando o comando ALTER USER. Por exemplo:
Altere o sobrenome do usuário
janesmith
paraJones
:ALTER USER janesmith SET LAST_NAME = 'Jones';
Defina ou altere o warehouse padrão, namespace, função primária e funções secundárias do usuário
janesmith
:ALTER USER janesmith SET DEFAULT_WAREHOUSE = mywarehouse DEFAULT_NAMESPACE = mydatabase.myschema DEFAULT_ROLE = myrole DEFAULT_SECONDARY_ROLES = ('ALL');
Visualização dos usuários¶
Você pode visualizar informações sobre os usuários usando SQL.
Use o comando DESCRIBE USER ou SHOW USERS para visualizar informações sobre um ou mais usuários.
Por exemplo:
DESC USER janeksmith;
Descarte de um usuário¶
Descartar um usuário retira as credenciais do usuário do Snowflake.
Cuidado
Quando você descarta um usuário, as planilhas e painéis pertencentes a esse usuário também serão removidos.
Para manter o acesso às planilhas de propriedade de um usuário, você tem duas opções:
Após descartar o usuário, recupere até 500 planilhas de propriedade do usuário.
Antes de seu descarte, o usuário pode compartilhar as planilhas ou uma pasta de planilhas com outro usuário e conceder a ele permissões de edição ou copiar o conteúdo das planilhas em planilhas pertencentes a outro usuário.
Os objetos criados pelo usuário, como tabelas ou exibições, não são descartados porque pertencem à função ativa do usuário quando os objetos foram criados. Outro usuário com a mesma função ou uma função superior na hierarquia de funções pode gerenciar os objetos ou transferir a propriedade para outra função.
Como usar o Snowsight¶
Uso do console clássico¶
Uso de SQL¶
Use o comando DROP USER para descartar um usuário.
DROP USER janesmith;