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

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