JWT サブジェクトクレームの検証(保留中)

注意

この動作変更は2025_06バンドルにあります。

バンドルの現在のステータスについては、 バンドル履歴 をご参照ください。

概要

このドキュメントでは、Snowflake REST APIs のキーペア認証で使用される JSON ウェブトークン(JWTs)の検証プロセスに対する今後の変更について説明します。セキュリティを強化するため、空の ``sub``(サブジェクト)クレームを持つ JWTs を受け入れる従前のフローを非推奨にします。

必要なアクション: アプリケーションがキーペア認証を使用する場合、JWT 生成ロジックを更新して、認証失敗を避けるために sub クレームが適切にフォーマットされているようにする必要があります。

変更点

注釈

この変更バンドルがデフォルトで有効になっている場合は、空の sub クレームを持つ JWTs は、iss クレーム形式に関係なく、拒否されることになります。

変更前:

JWTs は、sub クレームが空であっても、このケースに対して ``iss``(発行者)クレームが正しくフォーマットされていれば、受け入れられていました。

変更後:

システムは、sub クレームが有効な値を含む必要があることを厳密に強制するようになりました。sub クレームが空の場合、JWT は拒否され、認証は失敗します。

影響

旧動作に依存して空の sub クレームを持つ JWT を送信するアプリケーションまたはスクリプトは、認証リクエストに失敗するようになります。これにより、これらのアプリケーションのサービスは即時中断されます。

必要なアクション

サービスの中断を回避するには、次のステップを実行します。

  1. Snowflake REST APIs への接続にキーペア認証を使用するアプリケーションとスクリプトを精査します。

  2. JWT を生成するロジックに、適切にフォーマットされた ``iss``(発行者)クレームと有効な ``sub``(サブジェクト)クレームの両方が確実に含まれるようにします。

  3. クレームの正しい形式は次のとおりです。
    • iss:形式は必ず <account_identifier>.<user>.SHA256:<public_key_fingerprint> とする

    • sub:形式は必ず <account_identifier>.<user> とする

JWT を正しくフォーマットして生成する方法の詳細な指示と例については、キーペア認証の使用 をご参照ください。

参照:2077