ALTER SESSION POLICY

Modifica as propriedades para uma política de sessão existente.

Quaisquer alterações feitas nas propriedades da política da sessão entram em vigor quando a próxima consulta SQL que utiliza a política da sessão for executada.

Consulte também:

Referência DDL da política de sessão

Sintaxe

ALTER SESSION POLICY [ IF EXISTS ] <name> RENAME TO <new_name>

ALTER SESSION POLICY [ IF EXISTS ] <name> SET [ SESSION_IDLE_TIMEOUT_MINS = <integer> ]
                                              [ SESSION_UI_IDLE_TIMEOUT_MINS = <integer> ]
                                              [ COMMENT = '{string_literal}' ]

ALTER SESSION POLICY [ IF EXISTS ] <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]

ALTER SESSION POLICY [ IF EXISTS ] <name> UNSET TAG <tag_name> [ , <tag_name> ... ]

ALTER SESSION POLICY [ IF EXISTS ] <name> UNSET [ SESSION_IDLE_TIMEOUT_MINS ]
                                                [ SESSION_UI_IDLE_TIMEOUT_MINS ]
                                                [ COMMENT ]
Copy

Parâmetros

name

Identificador para a política da sessão; 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.

RENAME TO new_name

Especifica o novo identificador para a política da sessão; deve ser único para sua conta.

Para obter mais detalhes, consulte Requisitos para identificadores.

Você pode mover o objeto para um banco de dados e/ou esquema diferente enquanto opcionalmente renomeia o objeto. Para isso, especifique um valor qualificado new_name que inclua o novo banco de dados e/ou nome do esquema no formulário db_name.schema_name.object_name ou schema_name.object_name, respectivamente.

Nota

  • O banco de dados e/ou esquema de destino já deve existir. Além disso, um objeto com o mesmo nome não pode já existir no banco de dados de destino; caso contrário, a instrução retorna um erro.

  • É proibido mover um objeto para um esquema de acesso gerenciado a menos que o proprietário do objeto (ou seja, a função que tem o privilégio OWNERSHIP sobre o objeto) também possua o esquema de destino.

SET ...

Especifica um ou mais parâmetros a serem definidos para a política de sessão separados por espaços em branco, vírgulas ou novas linhas.

SESSION_IDLE_TIMEOUT_MINS = <integer>

Para os clientes Snowflake e clientes programáticos, o número de minutos em que uma sessão pode ficar ociosa antes que os usuários tenham que se autenticar novamente no Snowflake. O número de minutos pode ser qualquer número inteiro entre 5 e 240, inclusive. Se um valor não for especificado, o Snowflake usa o valor padrão.

Padrão: 240 (ou seja, 4 horas).

SESSION_UI_IDLE_TIMEOUT_MINS = <integer>

Para a Snowsight, o número de minutos em que uma sessão pode ficar ociosa antes que o usuário tenha que se autenticar novamente no Snowflake.

O número de minutos pode ser qualquer número inteiro entre 5 e 240, inclusive. Se um valor não for especificado, o Snowflake usa o valor padrão.

Padrão: 240 (ou seja, 4 horas).

TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]

Especifica o nome da tag e o valor da cadeia de caracteres dela.

O valor de tag é sempre uma cadeia de caracteres, e o número máximo de caracteres do valor da tag é 256.

Para obter mais detalhes sobre como especificar tags em uma instrução, consulte Cotas de tags para objetos e colunas.

COMMENT = 'string_literal'

Adiciona um comentário ou substitui um comentário existente para a política da sessão.

UNSET ...

Especifica um ou mais parâmetros a serem removidos da política de senhas, que os restaura aos padrões do sistema.

Você pode redefinir várias propriedades com uma única instrução ALTER. Cada propriedade deve obrigatoriamente ser separada por uma vírgula. Ao redefinir uma propriedade, especifique apenas o nome. A especificação de um valor para a propriedade retornará um erro.

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

OWNERSHIP

Política da sessão

OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege).

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 sessão, consulte Gerenciamento de políticas de sessão.

Notas de uso

  • Se você quiser atualizar uma política de sessão existente e precisar ver a definição atual da política, chame a função GET_DDL ou execute o comando DESCRIBE SESSION POLICY.

  • Antes de executar uma instrução ALTER, você pode executar uma instrução DESCRIBE SESSION POLICY para determinar os valores dos atributos da política.

  • Em relação aos metadados:

    Atenção

    Os clientes devem garantir que nenhum dado pessoal (exceto para um objeto do usuário), dados sensíveis, dados controlados por exportação ou outros dados regulamentados sejam inseridos como metadados ao usar o serviço Snowflake. Para obter mais informações, consulte Campos de metadados no Snowflake.

Exemplos

O exemplo a seguir atualiza a política da sessão para ter um valor de tempo limite de sessão da Snowsight de 60 minutos.

DESC SESSION POLICY session_policy_prod_1;
Copy
+---------------------------------+-----------------------+------------------------+--------------------------+--------------------------------------------------+
| createdOn                       | name                  | sessionIdleTimeoutMins | sessionUIIdleTimeoutMins | comment                                          |
+---------------------------------+-----------------------+------------------------+--------------------------+--------------------------------------------------+
| Mon, 11 Jan 2021 00:00:00 -0700 | session_policy_prod_1 | 60                     | 30                       | session policy for use in the prod_1 environment |
+---------------------------------+-----------------------+------------------------+--------------------------+--------------------------------------------------+
ALTER SESSION POLICY session_policy_prod_1 SET SESSION_UI_IDLE_TIMEOUT_MINS = 60;
Copy