Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erstellen einer signierten URL mit einer vordefinierten Richtlinie
Führen Sie die folgenden Schritte aus, um eine signierte URL mit einer vordefinierten Richtlinie zu erstellen.
So erstellen Sie eine signierte URL mit einer vordefinierten Richtlinie
-
Wenn Sie.NET oder Java verwenden, um signierte zu erstellen URLs, und wenn Sie den privaten Schlüssel für Ihr key pair nicht vom standardmäßigen .pem-Format in ein mit .NET oder Java kompatibles Format umformatiert haben, tun Sie dies jetzt. Weitere Informationen finden Sie unter Neuformatierung des privaten Schlüssels (nur .NET und Java).
-
Verketten Sie die folgenden Werte. Sie können das Format in diesem Beispiel für eine signierte URL verwenden.
https://d111111abcdef8.cloudfront.net/image.jpg?color=red&size=medium&Expires=1767290400&Signature=nitfHRCrtziwO2HwPfWw~yYDhUF5EwRunQA-j19DzZrvDh6hQ73lDx~-ar3UocvvRQVw6EkC~GdpGQyyOSKQim-TxAnW7d8F5Kkai9HVx0FIu-5jcQb0UEmatEXAMPLE3ReXySpLSMj0yCd3ZAB4UcBCAqEijkytL6f3fVYNGQI6&Key-Pair-Id=K2JCJMDEHXQW5FEntfernen Sie alle Leerzeichen (einschließlich Tabulatoren und Zeilenumbruchzeichen). Möglicherweise müssen Sie in der Zeichenfolge im Anwendungscode Escape-Zeichen einfügen. Alle Werte verfügen über
Stringals Typ.- 1.
Base URL for the file -
Die Basis-URL ist die CloudFront URL, die Sie für den Zugriff auf die Datei verwenden würden, wenn Sie keine signierten verwenden würden URLs, einschließlich Ihrer eigenen Abfragezeichenfolge-Parameter, falls vorhanden. Im vorherigen Beispiel lautet die Basis-URL
https://d111111abcdef8.cloudfront.net/image.jpg. Weitere Hinweise zum Format von URLs für Distributionen finden Sie unterAnpassen des URL-Formats für Dateien in CloudFront.-
Die folgende CloudFront URL bezieht sich auf eine Bilddatei in einer Distribution (unter Verwendung des CloudFront Domainnamens). Beachten Sie, dass
image.jpgeinimages-Verzeichnis ist. Der Pfad zur Datei in der URL muss mit dem Pfad zur Datei auf Ihrem HTTP-Server oder in Ihrem Amazon S3 Bucket übereinstimmen.https://d111111abcdef8.cloudfront.net/images/image.jpg -
Die folgende CloudFront URL enthält eine Abfragezeichenfolge:
https://d111111abcdef8.cloudfront.net/images/image.jpg?size=large -
Die folgenden Informationen CloudFront URLs beziehen sich auf Bilddateien in einer Distribution. Beide verwenden einen alternativen Domainnamen. Die zweite enthält eine Abfragezeichenfolge:
https://www.example.com/images/image.jpghttps://www.example.com/images/image.jpg?color=red -
Die folgende CloudFront URL bezieht sich auf eine Bilddatei in einer Distribution, die einen alternativen Domainnamen und das HTTPS-Protokoll verwendet:
https://www.example.com/images/image.jpg
-
- 2.
? -
?zeigt an, dass Abfrageparameter hinter der Basis-URL angegeben sind. Schließen Sie das?auch dann ein, wenn Sie keine Abfrageparameter angeben.Anmerkung
Sie können die folgenden Abfrageparameter in beliebiger Reihenfolge angeben.
- 3.
Your query string parameters, if any& -
(Optional) Sie können Ihre eigenen Abfragezeichenfolgenparameter eingeben. Fügen Sie dazu zwischen jedem ein Et-Zeichen (
&) hinzu, wie incolor=red&size=medium. Sie können die Abfragezeichenfolgenparameter in beliebiger Reihenfolge innerhalb der URL angeben.Wichtig
Ihre Abfragezeichenparameter können nicht mit
Expires,SignatureoderKey-Pair-Idbenannt werden. - 4.
Expires=date and time in Unix time format (in seconds) and Coordinated Universal Time (UTC) -
Das Datum und die Uhrzeit, wann die URL den Zugriff auf die Datei nicht mehr zulassen soll.
Geben Sie das Ablaufdatum und die Ablaufzeit im Unix-Zeitformat (in Sekunden) und in koordinierter Weltzeit (UTC) an. Beispielsweise wird der 1. Januar 2026, 10:00 Uhr UTC in das Unix-Zeitformat
1767290400umgewandelt, wie im Beispiel am Anfang dieses Themas dargestellt.Um die Epochenzeit zu verwenden, geben Sie eine 64-Bit-Ganzzahl für ein Datum an, das nicht nach
9223372036854775807(Freitag, 11. April 2262 um 23:47:16.854 UTC) liegt.Weitere Informationen zu UTC finden Sie unter RFC 3339, Datum und Uhrzeit im Internet: Zeitstempel
. - 5.
&Signature=hashed and signed version of the policy statement -
Eine gehashte, signierte und Base64-codierte Version der JSON-Richtlinienanweisung. Weitere Informationen finden Sie unter Erstellen einer Signatur für eine signierte URL, die eine vordefinierte Richtlinie verwendet.
- 6.
&Key-Pair-Id=public key ID for the CloudFront public key whose corresponding private key you're using to generate the signature -
Die ID für einen CloudFront öffentlichen Schlüssel, zum Beispiel
K2JCJMDEHXQW5F. Die ID des öffentlichen Schlüssels gibt an CloudFront , welcher öffentliche Schlüssel zur Validierung der signierten URL verwendet werden soll. CloudFront vergleicht die Informationen in der Signatur mit den Informationen in der Richtlinienerklärung, um sicherzustellen, dass die URL nicht manipuliert wurde.Dieser öffentliche Schlüssel muss zu einer Schlüsselgruppe gehören, die ein vertrauenswürdiger Aussteller in der Distribution ist. Weitere Informationen finden Sie unter Geben Sie Unterzeichner an, die signierte URLs und signierte Cookies erstellen können.
- 1.
Erstellen einer Signatur für eine signierte URL, die eine vordefinierte Richtlinie verwendet
Zum Erstellen der Signatur für eine signierte URL, die eine vordefinierte Richtlinie verwendet, führen Sie die folgenden Schritte aus.
Themen
Erstellen einer Richtlinienanweisung für eine signierte URL, die eine vordefinierte Richtlinie verwendet
Wenn Sie eine signierte URL mit einer vordefinierten Richtlinie erstellen, ist der Signature-Parameter eine gehashte und signierte Version einer Richtlinienanweisung. Bei signierten URLs , die eine vorgefertigte Richtlinie verwenden, fügen Sie die Richtlinienanweisung nicht in die URL ein, wie dies bei signierten Richtlinien der Fall ist URLs , die eine benutzerdefinierte Richtlinie verwenden. Zum Erstellen der Richtlinienanweisung führen Sie die folgenden Schritte aus.
So erstellen Sie die Richtlinienanweisung für eine signierte URL, die eine vordefinierte Richtlinie verwendet
-
Erstellen Sie die Richtlinienanweisung unter Verwendung des folgenden JSON-Formats und der UTF-8-Zeichencodierung. Fügen Sie alle Satzzeichen und andere Literalwerte genau wie angegeben ein. Informationen zu den Parametern
ResourceundDateLessThanfinden Sie unter Werte, die Sie in der Richtlinienanweisung für eine signierte URL angeben, die eine vordefinierte Richtlinie verwendet.{ "Statement": [ { "Resource": "base URL or stream name", "Condition": { "DateLessThan": { "AWS:EpochTime": ending date and time in Unix time format and UTC } } } ] } -
Entfernen Sie alle Leerzeichen (einschließlich Tabulatoren und Zeilenumbruchzeichen) aus der Richtlinienanweisung. Möglicherweise müssen Sie in der Zeichenfolge im Anwendungscode Escape-Zeichen einfügen.
Werte, die Sie in der Richtlinienanweisung für eine signierte URL angeben, die eine vordefinierte Richtlinie verwendet
Beim Erstellen einer Richtlinienanweisung für eine vordefinierte Richtlinie geben Sie die folgenden Werte an.
- Ressource
-
Anmerkung
Sie können nur einen Wert für
Resourceangeben.Die Basis-URL einschließlich Ihrer Abfragezeichenfolgen, sofern vorhanden, jedoch ohne die CloudFront
ExpiresKey-Pair-IdParameterSignature, und, zum Beispiel:https://d111111abcdef8.cloudfront.net/images/horizon.jpg?size=large&license=yesBeachten Sie Folgendes:
-
Protokoll – Der Wert muss mit
http://oderhttps://beginnen. -
Abfragezeichenfolgeparameter – Wenn Sie über keine Abfragezeichenfolgeparameter verfügen, lassen Sie das Fragezeichen weg.
-
Alternative Domänennamen – Wenn Sie einen alternativen Domänennamen (CNAME) in der URL angeben, müssen Sie diesen alternativen Domänennamen angeben, wenn Sie auf Ihrer Webseite oder in Ihrer Anwendung auf die Datei verweisen. Geben Sie nicht die Amazon-S3-URL für das Objekt an.
-
- DateLessThan
-
Das Ablaufdatum und die Ablaufzeit für die URL im Unix-Zeitformat (in Sekunden) und in koordinierter Weltzeit (UTC). Beispielsweise wird der 1. Januar 2026, 10:00 Uhr UTC im Unix-Zeitformat in 1767290400 umgewandelt.
Dieser Wert muss mit dem Wert des
Expires-Abfragezeichenfolgeparameters in der signierten URL übereinstimmen. Setzen Sie den Wert nicht in Anführungszeichen.Weitere Informationen finden Sie unter Wann CloudFront überprüft das Ablaufdatum und die Uhrzeit in einer signierten URL.
Beispiel-Richtlinienanweisung für eine signierte URL, die eine vordefinierte Richtlinie verwendet
Wenn Sie die folgende Beispiel-Richtlinienanweisung in einer signierten URL verwenden, kann ein Benutzer bis zum 1. Januar 2026, 10:00 Uhr UTC, auf die Datei https://d111111abcdef8.cloudfront.net/horizon.jpg zugreifen:
{ "Statement": [ { "Resource": "https://d111111abcdef8.cloudfront.net/horizon.jpg?size=large&license=yes", "Condition": { "DateLessThan": { "AWS:EpochTime": 1767290400 } } } ] }
Erstellen einer Signatur für eine signierte URL, die eine vordefinierte Richtlinie verwendet
Um den Wert für den Parameter Signature in einer signierten URL zu erstellen, müssen Sie die in Erstellen einer Richtlinienanweisung für eine signierte URL, die eine vordefinierte Richtlinie verwendet erstellte Richtlinienanweisung hashen und signieren.
Weitere Informationen und Beispiele für das Hashing, Signieren und Codieren der Richtlinienanweisung finden Sie unter:
Option 1: So erstellen Sie eine Signatur mithilfe einer vordefinierten Richtlinie
-
Verwenden Sie die SHA-1-Hash-Funktion und den generierten privaten RSA- oder ECDSA-Schlüssel, um die im Verfahren So erstellen Sie die Richtlinienanweisung für eine signierte URL, die eine vordefinierte Richtlinie verwendet erstellte Richtlinienanweisung zu hashen und zu signieren. Verwenden Sie die Version der Richtlinienanweisung, die keine Leerzeichen mehr enthält.
Verwenden Sie für den privaten Schlüssel, der für die Hash-Funktion erforderlich ist, einen privaten Schlüssel, dessen öffentlicher Schlüssel sich in einer aktiven vertrauenswürdigen Schlüsselgruppe für die Distribution befindet.
Anmerkung
Die Methode, die Sie zum Hashen und Signieren der Richtlinienanweisung verwenden, ist abhängig von Ihrer Programmiersprache und Plattform. Einen Beispiel-Code finden Sie unter Code-Beispiele für das Erstellen einer Signatur für eine signierte URL.
-
Entfernen Sie die Leerzeichen (einschließlich Tabulatoren und Zeilenumbruchzeichen) aus der gehashten und signierten Zeichenfolge.
-
Nehmen Sie eine Base64-Codierung der Zeichenfolge mithilfe von MIME-Base64-Codierung vor. Weitere Informationen finden Sie in Abschnitt 6.8, Base64 Content-Transfer-Encoding
in RFC 2045, MIME (Multipurpose Internet Mail Extensions), Teil 1: Format von Internet-Nachrichtentexten. -
Ersetzen Sie Zeichen, die in einer URL-Abfragezeichenfolge nicht gültig sind, durch gültige Zeichen. In der folgenden Tabelle sind ungültige und gültige Zeichen aufgelistet.
Ersetzen Sie diese ungültigen Zeichen Durch diese gültigen Zeichen +
- (Bindestrich)
=
_ (Unterstrich)
/
~ (Tilde)
-
Fügen Sie den resultierenden Wert hinter
&Signature=zu Ihrer signierten URL hinzu und kehren Sie zu So erstellen Sie eine signierte URL mit einer vordefinierten Richtlinie zurück, um das Verketten der Teile Ihrer signierten URL abzuschließen.