Validierung des JWT-Subjektanspruchs (Ausstehend)¶
Achtung
Diese Verhaltensänderung ist in Bundle 2025_06 enthalten.
Den aktuellen Status des Bundles finden Sie unter Bundle-Verlauf.
Übersicht¶
Dieses Dokument beschreibt eine bevorstehende Änderung des Validierungsprozesses für JSON Web Tokens (JWTs), der mit der Schlüsselpaar-Authentifizierung für Snowflake REST APIs verwendet wird. Um die Sicherheit zu erhöhen, verwerfen wir einen alten Ablauf, der JWTs mit einem leeren sub (Subjekt)-Anspruch akzeptiert hat.
Erforderliche Aktion: Wenn Ihre Anwendung die Authentifizierung mit Schlüsselpaaren verwendet, müssen Sie Ihre Logik für die JWT-Generierung aktualisieren, um sicherzustellen, dass der sub-Anspruch korrekt formatiert ist, um Authentifizierungsfehler zu vermeiden.
Was ändert sich?¶
Bemerkung
Wenn dieses Änderungs-Bundle standardmäßig aktiviert ist, werden JWTs mit einem leeren sub-Anspruch unabhängig vom Format des iss-Anspruchs abgelehnt.
- Vor der Änderung:
JWTs wurden auch dann akzeptiert, wenn der
sub-Anspruch leer war, vorausgesetzt, dass deriss(Aussteller)-Anspruch für diesen Fall korrekt formatiert wurde.- Nach der Änderung:
Das System wird jetzt strikt durchsetzen, dass der
sub-Anspruch einen gültigen Wert enthalten muss. Wenn dersub-Anspruch leer ist, wird das JWT abgelehnt und die Authentifizierung schlägt fehl.
Auswirkung¶
Jede Anwendung oder jedes Skript, die bzw. das sich auf das alte Verhalten beim Senden eines JWT mit einem leeren sub-Anspruch stützt, beginnt damit, Authentifizierungsanforderungen fehlschlagen zu lassen. Dies führt zu einer sofortigen Unterbrechung des Dienstes für diese Anwendungen.
Erforderliche Aktionen¶
Um eine Unterbrechung des Dienstes zu vermeiden, führen Sie die folgenden Schritte aus:
Überprüfen Sie Ihre Anwendungen und Skripte, die die Authentifizierung mit einem Schlüsselpaar für die Verbindung mit Snowflake REST APIs verwenden.
Stellen Sie sicher, dass die Logik zum Generieren Ihres JWT sowohl einen korrekt formatierten
iss(Aussteller)-Anspruch als auch einen gültigensub(Subjekt)-Anspruch enthält.- Das korrekte Format für die Ansprüche ist:
iss: Muss formatiert sein als<account_identifier>.<user>.SHA256:<public_key_fingerprint>sub: Muss formatiert sein als<account_identifier>.<user>
Detaillierte Anweisungen und Beispiele zum korrekten Formatieren und Generieren Ihres JWT finden Sie unter Verwenden der Schlüsselpaar-Authentifizierung.
Ref: 2077