Media CDN verwendet beim Signieren von Anfragen kryptografische Schlüsselpaare. Media CDN verwendet einen Schlüsselsatz zum Speichern von Schlüsselpaaren, die aktiv zur Unterzeichnung von Anträgen verwendet. Sie können bis zu drei öffentliche Schlüssel und drei freigegebene Validierungsschlüssel angeben, also insgesamt sechs Schlüssel pro Schlüsselsatz.
Sie können auch nicht verwendete Schlüssel aus einem Schlüsselsatz entfernen. Das Hinzufügen und Entfernen eines Schlüssels wird in der Regel als Schlüsselrotation bezeichnet. Mit der Secret-Rotation haben Sie folgende Möglichkeiten:
- Neue Secrets zu einem Schlüsselsatz sicher hinzufügen, indem Sie sie an den Schlüsselsatz anhängen.
- Tokens mit dem entsprechenden Secret generieren.
Alte Secrets entfernen, nachdem das älteste mögliche Token abläuft.
Nehmen wir an, Sie haben Ihre Token mit kurzer Laufzeit so eingestellt, dass sie nach einer Stunde ablaufen. Anschließend entfernen Sie das älteste Secret, das für die Tokens mit kurzer Laufzeit verwendet wurde, nachdem neue Anfragen Nutzer eine oder mehrere Stunden versorgt haben.
Bevor Sie ein nicht verwendetes Secret entfernen, vergewissern Sie sich, dass es nicht referenziert oder abgerufen wird, um
Nutzeranfragen auf Ihrem Anwendungsserver signieren. Durch das vorzeitige Entfernen eines Secrets aus einem Schlüsselsatz wird verhindert, dass Media CDN Anfragen mit diesem Secret validiert. Betroffene Nutzer erhalten eine HTTP 403
Forbidden
-Antwort.
Um Leistung, Zuverlässigkeit und Kosten gleichzeitiger Zugriffe auf Secret Manager zu optimieren, werden Ihre freigegebenen Validierungsschlüssel bis zu eine Stunde lang im Cache gespeichert. Secret-Caching kann zum kontinuierlichen Tokenzugriff führen, nachdem ein Secret erstellt wurde bis zu einer Stunde aus Secret Manager gelöscht.
Als Best Practice sollten Schlüssel regelmäßig rotieren.
Bekannte Einschränkungen
Media CDN lehnt Anfragen, die mit den von Cloud CDN verwendeten symmetrischen Signaturen signiert sind, mit einer HTTP 403
-Antwort ab.
Media CDN unterstützt derzeit symmetrische Schlüssel mit Anfragen mit
das Tokenformat und die Schlüssel, auf die Media CDN verweist.
Asymmetrische Schlüssel müssen als Ed25519-Paare generiert werden, mit einem privaten Schlüssel von 512 Bit (64 Byte) und einem öffentlichen Schlüssel von 256 Bit (32 Byte). Die Tink-Bibliothek unterstützt die Schlüsselgenerierung, Signatur und Validierung von Ed25519-Signaturen mit C++, Go, Java und Objective-C.
Asymmetrische Schlüssel müssen die folgenden Eigenschaften haben:
Sie müssen base64-codiert sein und eine Länge von 44 Byte (aufgefüllt) oder 43 Byte (nicht aufgefüllt) haben. Es werden sowohl aufgefüllte als auch nicht aufgefüllte Base64-Formen akzeptiert.
Der öffentliche Schlüssel muss im URL-sicheren Base64-Format codiert sein. Der private Schlüssel kann im Standard-Base64-Format codiert sein.
einen passenden privaten Schlüssel haben.