Validação da declaração de assunto de JWT (pendente)

Atenção

Essa alteração de comportamento está no pacote 2025_06.

Para saber o status atual do pacote, consulte Histórico do pacote.

Visão geral

Este documento descreve uma alteração futura no processo de validação de JSON Web Tokens (JWTs) usados ​​com autenticação de par de chaves para APIs Snowflake REST. Para aumentar a segurança, vamos descontinuar um fluxo obsoleto que aceitava JWTs com uma declaração sub (assunto) vazia.

Ação necessária: se o seu aplicativo usa autenticação de par de chaves, atualize sua lógica de geração de JWT para garantir que a declaração sub esteja formatada corretamente e evitar falhas de autenticação.

O que vai mudar

Nota

Quando esse pacote de alterações estiver ativado por padrão, JWTs com uma declaração sub vazia serão rejeitados, independentemente do formato da declaração iss.

Antes da mudança:

JWTs eram aceitos mesmo que a declaração sub estivesse vazia, desde que a declaração iss (emissor) estivesse formatada corretamente para esse caso.

Após a mudança:

O sistema agora exigirá rigorosamente que a declaração sub contenha um valor válido. Se a declaração sub estiver vazia, o JWT será rejeitado e a autenticação falhará.

Impacto

Qualquer aplicativo ou script que dependa do antigo comportamento de enviar um JWT com uma declaração sub vazia começará a apresentar falha nas solicitações de autenticação. Isso resultará na interrupção imediata do serviço para esses aplicativos.

Ações necessárias

Para evitar qualquer interrupção do serviço, siga as seguintes etapas:

  1. Revise seus aplicativos e scripts que usam autenticação de par de chaves para se conectar a APIs Snowflake REST.

  2. Certifique-se de que a lógica para gerar seu JWT inclua uma declaração iss (emissor) formatada corretamente e uma declaração sub (assunto) válida.

  3. O formato correto para as declarações é:
    • iss: Deve ser formatado como <account_identifier>.<user>.SHA256:<public_key_fingerprint>

    • sub: Deve ser formatado como <account_identifier>.<user>

Para obter instruções detalhadas e exemplos sobre como formatar e gerar seu JWT corretamente, consulte Como usar a autenticação por par de chaves.

Ref: 2077