CREATE PASSWORD POLICY¶
Cria uma nova política de senhas ou substitui uma política de senhas existente.
Após criar uma política de senhas, aplique a política de senhas a uma conta usando uma instrução ALTER ACCOUNT ou a um usuário usando uma instrução ALTER USER.
- Consulte também:
Uso de políticas de senhas , Gerenciamento de políticas de senhas
Sintaxe¶
CREATE [ OR REPLACE ] PASSWORD POLICY [ IF NOT EXISTS ] <name>
[ PASSWORD_MIN_LENGTH = <integer> ]
[ PASSWORD_MAX_LENGTH = <integer> ]
[ PASSWORD_MIN_UPPER_CASE_CHARS = <integer> ]
[ PASSWORD_MIN_LOWER_CASE_CHARS = <integer> ]
[ PASSWORD_MIN_NUMERIC_CHARS = <integer> ]
[ PASSWORD_MIN_SPECIAL_CHARS = <integer> ]
[ PASSWORD_MIN_AGE_DAYS = <integer> ]
[ PASSWORD_MAX_AGE_DAYS = <integer> ]
[ PASSWORD_MAX_RETRIES = <integer> ]
[ PASSWORD_LOCKOUT_TIME_MINS = <integer> ]
[ PASSWORD_HISTORY = <integer> ]
[ COMMENT = '<string_literal>' ]
Parâmetros obrigatórios¶
name
Identificador da política de senhas; deve ser único para sua conta.
O valor do identificador deve começar com um caractere alfabético e não pode conter espaços ou caracteres especiais, a menos que toda a cadeia de caracteres do identificador esteja entre aspas duplas (por exemplo,
"My object"
). Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.Para obter mais detalhes, consulte Requisitos para identificadores.
Parâmetros opcionais¶
PASSWORD_MIN_LENGTH = integer
Especifica o número mínimo de caracteres que a senha deve conter.
Intervalo suportado: 8 até 256, inclusive.
Padrão: 8
PASSWORD_MAX_LENGTH = integer
Especifica o número máximo de caracteres que a senha deve conter. Este número deve ser maior ou igual à soma de
PASSWORD_MIN_LENGTH
,PASSWORD_MIN_UPPER_CASE_CHARS
ePASSWORD_MIN_LOWER_CASE_CHARS
.Intervalo suportado: 8 até 256, inclusive.
Padrão: 256
PASSWORD_MIN_UPPER_CASE_CHARS = integer
Especifica o número mínimo de caracteres maiúsculos que a senha deve conter.
Intervalo suportado: 0 até 256, inclusive.
Padrão: 1
PASSWORD_MIN_LOWER_CASE_CHARS = integer
Especifica o número mínimo de caracteres minúsculos que a senha deve conter.
Intervalo suportado: 0 até 256, inclusive.
Padrão: 1
PASSWORD_MIN_NUMERIC_CHARS = integer
Especifica o número mínimo de caracteres numéricos que a senha deve conter.
Intervalo suportado: 0 até 256, inclusive.
Padrão: 1
PASSWORD_MIN_SPECIAL_CHARS = integer
Especifica o número mínimo de caracteres especiais que a senha deve conter.
Intervalo suportado: 0 até 256, inclusive.
Padrão: 0
PASSWORD_MIN_AGE_DAYS = integer
Especifica o número de dias que o usuário deve esperar antes que uma senha alterada recentemente possa ser alterada novamente.
Intervalo suportado: 0 até 999, inclusive.
Padrão: 0
PASSWORD_MAX_AGE_DAYS = integer
Especifica o número máximo de dias antes que a senha deva ser alterada.
Intervalo suportado: 0 até 999, inclusive.
Um valor de zero (isto é,
0
) indica que a senha não precisa ser alterada. Snowflake não recomenda a escolha deste valor para uma política de senhas padrão em nível de conta ou para qualquer política em nível de usuário. Em vez disso, escolha um valor que cumpra suas diretrizes de segurança interna.Padrão: 90, o que significa que a senha deve ser alterada a cada 90 dias.
Importante
Este parâmetro é com estado. Para obter mais detalhes, consulte a nota em Política de senhas personalizada para a conta e usuários.
PASSWORD_MAX_RETRIES = integer
Especifica o número máximo de tentativas de entrada de uma senha antes de ser bloqueada.
Intervalo suportado: 1 até 10, inclusive.
Padrão: 5
Importante
Este parâmetro é com estado. Para obter mais detalhes, consulte a nota em Política de senhas personalizada para a conta e usuários.
PASSWORD_LOCKOUT_TIME_MINS = integer
Especifica o número de minutos que a conta do usuário será bloqueada após esgotar o número designado de tentativas de nova senha (ou seja,
PASSWORD_MAX_RETRIES
).Intervalo suportado: 1 até 999, inclusive.
Padrão: 15
Importante
Este parâmetro é com estado. Para obter mais detalhes, consulte a nota em Política de senhas personalizada para a conta e usuários.
PASSWORD_HISTORY = integer
Especifica o número das senhas mais recentes que o Snowflake armazena. Essas senhas armazenadas não podem ser repetidas quando um usuário atualiza o valor da senha.
O valor da senha atual não conta para o histórico.
Quando você aumenta o valor do histórico, o Snowflake salva os valores anteriores.
Quando você diminui o valor, o Snowflake salva os valores armazenados até o valor definido. Por exemplo, se o valor do histórico for 8 e você alterar o valor do histórico para 3, o Snowflake armazenará as 3 senhas mais recentes e excluirá os valores das 5 senhas mais antigas do histórico.
Padrão: 0
Máx.: 24
COMMENT = 'string_literal'
Adiciona um comentário ou substitui um comentário existente para a política de senhas.
Requisitos de controle de acesso¶
Uma função usada para executar este comando SQL deve ter os seguintes privilégios no mínimo:
Privilégio |
Objeto |
Notas |
---|---|---|
CREATE PASSWORD POLICY |
Esquema |
Observe que operar em qualquer objeto de um esquema também requer o privilégio USAGE no banco de dados e esquema principais.
Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.
Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.
Para obter detalhes adicionais sobre privilégios e DDL da política de senhas, consulte Gerenciamento de políticas de senhas.
Notas de uso¶
Se você quiser substituir uma política de senhas existente e precisar ver a definição atual da política, chame a função GET_DDL ou execute o comando DESCRIBE PASSWORD POLICY.
Instruções CREATE OR REPLACE <object> são atômicas. Ou seja, quando um objeto é substituído, o objeto antigo é excluído e o novo objeto é criado em uma única transação.
Exemplos¶
Crie uma política de senhas chamada password_policy_prod_1
para sua conta atual:
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 = 30 PASSWORD_MAX_RETRIES = 3 PASSWORD_LOCKOUT_TIME_MINS = 30 PASSWORD_HISTORY = 5 COMMENT = 'production account password policy';