ALTER SECURITY INTEGRATION (Snowflake OAuth)

Modifica as propriedades de uma integração de segurança existente criada para um cliente Snowflake OAuth. Para obter mais informações sobre a modificação de outros tipos de integrações de segurança (por exemplo, OAuth externo), consulte ALTER SECURITY INTEGRATION.

Consulte também:

CREATE SECURITY INTEGRATION (Snowflake OAuth) , DROP INTEGRATION , SHOW INTEGRATIONS , DESCRIBE INTEGRATION

Sintaxe

ALTER [ SECURITY ] INTEGRATION <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]

ALTER [ SECURITY ] INTEGRATION <name> UNSET TAG <tag_name> [ , <tag_name> ... ]
Copy

Snowflake OAuth para aplicativos de parceiros

ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name> SET
  [ ENABLED = { TRUE | FALSE } ]
  [ OAUTH_ISSUE_REFRESH_TOKENS = TRUE | FALSE ]
  [ OAUTH_REDIRECT_URI ] = '<uri>'
  [ OAUTH_REFRESH_TOKEN_VALIDITY = <integer> ]
  [ OAUTH_USE_SECONDARY_ROLES = IMPLICIT | NONE ]
  [ BLOCKED_ROLES_LIST = ( '<role_name>' [ , '<role_name>' , ... ] ) ]
  [ COMMENT = '<string_literal>' ]

ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name> UNSET {
  ENABLED |
  COMMENT
  }
  [ , ... ]
Copy

Snowflake OAuth para clientes personalizados

ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name> SET
  [ ENABLED = { TRUE | FALSE } ]
  [ OAUTH_REDIRECT_URI = '<uri>' ]
  [ OAUTH_ALLOW_NON_TLS_REDIRECT_URI = TRUE | FALSE ]
  [ OAUTH_ENFORCE_PKCE = TRUE | FALSE ]
  [ PRE_AUTHORIZED_ROLES_LIST = ( '<role_name>' [ , '<role_name>' , ... ] ) ]
  [ BLOCKED_ROLES_LIST = ( '<role_name>' [ , '<role_name>' , ... ] ) ]
  [ OAUTH_ISSUE_REFRESH_TOKENS = TRUE | FALSE ]
  [ OAUTH_REFRESH_TOKEN_VALIDITY = <integer> ]
  [ OAUTH_USE_SECONDARY_ROLES = IMPLICIT | NONE ]
  [ NETWORK_POLICY = '<network_policy>' ]
  [ OAUTH_CLIENT_RSA_PUBLIC_KEY = <public_key1> ]
  [ OAUTH_CLIENT_RSA_PUBLIC_KEY_2 = <public_key2> ]
  [ COMMENT = '{string_literal}' ]

ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name>  UNSET {
                                                           ENABLED                       |
                                                           NETWORK_POLICY                |
                                                           OAUTH_CLIENT_RSA_PUBLIC_KEY   |
                                                           OAUTH_CLIENT_RSA_PUBLIC_KEY_2 |
                                                           OAUTH_USE_SECONDARY_ROLES = IMPLICIT | NONE
                                                           COMMENT
                                                           }
                                                           [ , ... ]
Copy

Parâmetros

Parâmetros de aplicativos de parceiros do Snowflake OAuth

Use estes parâmetros quando OAUTH_CLIENT = <partner_application> na integração de segurança. Por exemplo, estes parâmetros são válidos para OAUTH_CLIENT = TABLEAU_SERVER.

name

Identificador da integração a ser alterada. Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.

SET ...

Especifica uma ou mais propriedades/parâmetros a serem definidos para a integração (separados por espaços em branco, vírgulas ou novas linhas):

ENABLED = TRUE | FALSE

Especifica se deve iniciar a operação da integração ou suspendê-la.

  • TRUE permite que a integração funcione com base nos parâmetros especificados na definição do canal.

  • FALSE suspende a integração para manutenção. Qualquer integração entre o Snowflake e um serviço de terceiro não funciona.

OAUTH_REDIRECT_URI = 'uri'

Especifica o URI do cliente. Depois que um usuário é autenticado, o navegador é redirecionado para este URI.

Este parâmetro é necessário quando OAUTH_CLIENT = LOOKER. Para obter mais detalhes, consulte o exemplo na Documentação do Looker.

OAUTH_ISSUE_REFRESH_TOKENS = TRUE | FALSE

Booleano que especifica se permite ao cliente trocar um token de atualização por um token de acesso quando o token de acesso atual tiver expirado. Se definido como FALSE, um token de atualização não é emitido. O consentimento do usuário é revogado, e o usuário deve confirmar a autorização novamente.

Padrão: TRUE

OAUTH_REFRESH_TOKEN_VALIDITY = integer

Inteiro que especifica por quanto tempo os tokens de atualização devem ser válidos (em segundos). Isso pode ser usado para expirar o token de atualização periodicamente.

Observe que se sua organização desejar que os valores mínimos ou máximos abaixem ou aumentem, respectivamente, você deve pedir para o administrador de sua conta enviar uma solicitação para o suporte Snowflake.

Valores

86400 (1 dia) até 7776000 (90 dias)

Padrão

7776000

OAUTH_USE_SECONDARY_ROLES = IMPLICIT | NONE

IMPLICIT

As funções secundárias padrão definidas nas propriedades do usuário são ativadas por padrão na sessão que está sendo aberta.

NONE

As funções secundárias predefinidas não são suportadas na sessão que está sendo aberta.

Padrão: NONE

BLOCKED_ROLES_LIST = ( 'role_name' [ , 'role_name' , ... ] )

Lista separada por vírgula das funções do Snowflake que um usuário não pode consentir explicitamente a utilização após autenticação (por exemplo, 'custom_role1', 'custom_role2').

Por padrão, o Snowflake impede a autenticação das funções ACCOUNTADMIN, ORGADMIN e SECURITYADMIN. Para permitir a autenticação dessas funções privilegiadas, use o comando ALTER ACCOUNT para definir o parâmetro de conta OAUTH_ADD_PRIVILEGED_ROLES_TO_BLOCKED_LIST como FALSE.

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'

Cadeia de caracteres (literal) que especifica um comentário da integração.

Parâmetros de clientes personalizados do Snowflake OAuth

Use estes parâmetros quando OAUTH_CLIENT = CUSTOM na integração de segurança.

name

Identificador da integração a ser alterada. Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.

SET ...

Especifica uma ou mais propriedades/parâmetros a serem definidos para a integração (separados por espaços em branco, vírgulas ou novas linhas):

ENABLED = TRUE | FALSE especifica se deve iniciar a operação da integração ou suspendê-la.

  • TRUE permite que a integração funcione com base nos parâmetros especificados na definição do canal.

  • FALSE suspende a integração para manutenção. Qualquer integração entre o Snowflake e um serviço de terceiro não funciona.

OAUTH_REDIRECT_URI = 'uri'

Especifica o URI do cliente. Depois que um usuário é autenticado, o navegador é redirecionado para este URI. O URI deve ser protegido por TLS (Transport Layer Security), a menos que o parâmetro opcional OAUTH_ALLOW_NON_TLS_REDIRECT_URI esteja definido como TRUE.

Não inclua parâmetros de consulta enviados com o redirecionamento URI na solicitação para o ponto de extremidade de autorização. Por exemplo, se o valor do parâmetro de consulta redirect_uri na solicitação ao ponto de extremidade de autorização for https://www.example.com/connect?authType=snowflake, verifique se o parâmetro OAUTH_REDIRECT_URI está definido como https://www.example.com/connect.

OAUTH_ALLOW_NON_TLS_REDIRECT_URI = TRUE | FALSE

Se TRUE, permite definir OAUTH_REDIRECT_URI para um URI não protegido por TLS. Recomendamos o uso de TLS para evitar que o OAuth intermediário seja redirecionado para uso em ataques de phishing.

Padrão: FALSE

OAUTH_ENFORCE_PKCE = TRUE | FALSE

Booleano que especifica se a chave de prova para troca de código (PKCE) deve ser exigida para a integração.

Padrão: FALSE

OAUTH_USE_SECONDARY_ROLES = IMPLICIT | NONE

IMPLICIT

As funções secundárias padrão definidas nas propriedades do usuário são ativadas por padrão na sessão que está sendo aberta.

NONE

As funções secundárias predefinidas não são suportadas na sessão que está sendo aberta.

Padrão: NONE

PRE_AUTHORIZED_ROLES_LIST = '( role_name' [ , 'role_name , ... ] ')

Lista separada por vírgula das funções do Snowflake que um usuário não precisa consentir explicitamente a utilização após autenticação, por exemplo, 'custom_role1', 'custom_role2'. Note que as funções ACCOUNTADMIN, ORGADMIN e SECURITYADMIN não podem ser incluídas nesta lista.

Nota

Este parâmetro é suportado apenas para clientes confidenciais.

BLOCKED_ROLES_LIST = ( 'role_name' [ , 'role_name' , ... ] )

Lista separada por vírgula das funções do Snowflake que um usuário não pode consentir explicitamente a utilização após autenticação (por exemplo, 'custom_role1', 'custom_role2').

Observe que as funções ACCOUNTADMIN, ORGADMIN e SECURITYADMIN estão incluídas nessa lista por padrão; entretanto, se essas funções precisarem ser removidas para sua conta, peça para o administrador da conta enviar uma solicitação para o suporte Snowflake.

OAUTH_ISSUE_REFRESH_TOKENS = TRUE | FALSE

Booleano que especifica se permite ao cliente trocar um token de atualização por um token de acesso quando o token de acesso atual tiver expirado. Se definido como FALSE, um token de atualização não é emitido. O consentimento do usuário é revogado, e o usuário deve confirmar a autorização novamente.

Padrão: TRUE

OAUTH_REFRESH_TOKEN_VALIDITY = integer

Inteiro que especifica por quanto tempo os tokens de atualização devem ser válidos (em segundos). Isso pode ser usado para expirar o token de atualização periodicamente.

Quando um token de atualização expirar, o aplicativo precisará direcionar o usuário ao fluxo de autorização novamente para obter um novo token de atualização.

Os valores mínimo, máximo e padrão suportados são os seguintes:

Aplicativo

Mínimo

Máximo

Padrão

Tableau Desktop

60 (1 minuto)

36000 (10 horas)

36000 (10 horas)

Tableau Server ou Tableau Online

60 (1 minuto)

7776000 (90 dias)

7776000 (90 dias)

Cliente personalizado

86400 (1 dia)

7776000 (90 dias)

7776000 (90 dias)

Se você tiver uma necessidade comercial de abaixar o valor mínimo ou aumentar o valor máximo, peça para o administrador de sua conta enviar uma solicitação para o suporte Snowflake.

NETWORK_POLICY = 'network_policy'

Especifica uma política de redes existente ativa para sua conta. A política de redes restringe a lista de endereços IP do usuário ao trocar um código de autorização por um token de acesso ou de atualização e ao usar um token de atualização para obter um novo token de acesso. Se este parâmetro não for definido, a política de redes para a conta (se houver) é utilizada em seu lugar.

OAUTH_CLIENT_RSA_PUBLIC_KEY = public_key1

Especifica uma chave pública RSA.

OAUTH_CLIENT_RSA_PUBLIC_KEY_2 = public_key2

Especifica uma segunda chave pública RSA. Utilizado para rotação de chaves.

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'

Cadeia de caracteres (literal) que especifica um comentário da integração.

UNSET ...

Especifica uma ou mais propriedades/parâmetros a serem desativados para a integração de segurança, o que os restaura aos seus padrões:

  • ENABLED

  • NETWORK_POLICY

  • OAUTH_CLIENT_RSA_PUBLIC_KEY

  • OAUTH_CLIENT_RSA_PUBLIC_KEY_2

  • TAG tag_name [ , tag_name ... ]

  • COMMENT

Notas de uso

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 inicia a operação de uma integração suspensa:

ALTER SECURITY INTEGRATION myint SET ENABLED = TRUE;
Copy