ALTER SECRET¶
Modifica as propriedades de um segredo existente.
- Consulte também:
CREATE SECRET , DESCRIBE SECRET , DROP SECRET , SHOW SECRETS
Sintaxe¶
OAuth com fluxo de credenciais do cliente:
ALTER SECRET [ IF EXISTS ] <name> SET [ OAUTH_SCOPES = ( '<scope_1>' [ , '<scope_2>' ... ] ) ] [ COMMENT = '<string_literal>' ] ALTER SECRET [ IF EXISTS ] <name> UNSET COMMENT
OAuth com fluxo de concessão de código de autorização:
ALTER SECRET [ IF EXISTS ] <name> SET [ OAUTH_REFRESH_TOKEN = '<token>' ] [ OAUTH_REFRESH_TOKEN_EXPIRY_TIME = '<string_literal>' ] [ COMMENT = '<string_literal>' ] ALTER SECRET [ IF EXISTS ] <name> UNSET COMMENT
Autenticação básica:
ALTER SECRET [ IF EXISTS ] <name> SET [ USERNAME = '<username>' ] [ PASSWORD = '<password>' ] [ COMMENT = '<string_literal>' ] ALTER SECRET [ IF EXISTS ] <name> UNSET COMMENT
Cadeia de caracteres genérica:
ALTER SECRET [ IF EXISTS ] <name> SET [ SECRET_STRING = '<string_literal>' ] [ COMMENT = '<string_literal>' ] ALTER SECRET [ IF EXISTS ] <name> UNSET COMMENT
OAuth com parâmetros de fluxo de credenciais do cliente¶
name
Cadeia de caracteres que especifica o identificador (ou seja, nome) do segredo; deve ser única em seu esquema.
SET ...
Especifica um ou mais parâmetros a serem definidos (separados por espaços em branco, vírgulas ou novas linhas):
OAUTH_SCOPES = ( 'scope_1' [ , 'scope_2' ... ] )
Especifica uma lista separada por vírgulas dos escopos a serem usados ao fazer uma solicitação do servidor OAuth por uma função com USAGE na integração durante o fluxo de credenciais do cliente OAuth.
Esta lista deve ser um subconjunto dos escopos definidos na propriedade
OAUTH_ALLOWED_SCOPES
da integração de segurança. Se os valores de propriedadeOAUTH_SCOPES
não forem especificados, o segredo herdará todos os escopos que são especificados na integração de segurança.
Parâmetros de autenticação básica¶
name
Cadeia de caracteres que especifica o identificador (ou seja, nome) do segredo; deve ser única em seu esquema.
SET ...
Especifica um ou mais parâmetros a serem definidos para a sessão (separados por espaços em branco, vírgulas ou novas linhas):
USERNAME = 'username'
Especifica o valor do nome de usuário a ser armazenado no segredo.
Especifique este valor de propriedade ao usar um segredo para autenticação básica (ou seja, o segredo é
TYPE = PASSWORD
).PASSWORD = 'password'
Especifica o valor da senha a ser armazenada no segredo.
Especifique este valor de propriedade ao usar um segredo para autenticação básica (ou seja, o segredo é
TYPE = PASSWORD
).
Parâmetros da cadeia de caracteres genérica¶
name
Cadeia de caracteres que especifica o identificador (ou seja, nome) do segredo; deve ser única em seu esquema.
SET ...
Especifica um ou mais parâmetros a serem definidos (separados por espaços em branco, vírgulas ou novas linhas):
SECRET_STRING = 'string_literal'
Especifica a cadeia de caracteres a ser armazenada no segredo.
A cadeia de caracteres pode ser um token API ou uma cadeia de caracteres de valor confidencial que pode ser usada no código do manipulador de uma UDF ou procedimento armazenado. Para obter mais detalhes, consulte Criação e uso de uma integração de acesso externo.
Você não deve usar esta propriedade para armazenar qualquer tipo de token OAuth; use um dos outros tipos de segredo para seus casos de uso OAuth.
Parâmetros comuns: todas as sintaxes¶
SET ...
Especifica um ou mais parâmetros a serem definidos para a sessão (separados por espaços em branco, vírgulas ou novas linhas):
COMMENT = 'string_literal'
Cadeia de caracteres (literal) que especifica um comentário para o segredo.
Padrão: sem valor
UNSET ...
Especifica uma ou mais propriedades/parâmetros a serem desativados para o segredo, o que os restaura aos seus padrões:
COMMENT
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 |
Segredo |
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.
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¶
Modifique o comentário de um segredo:
ALTER SECRET service_now_creds_pw SET COMMENT = 'production secret for servicenow';