Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Elementi della firma di una AWS API richiesta
Importante
A meno che non si utilizzi l'CLIopzione AWS SDKs o, è necessario scrivere codice per calcolare le firme che forniscono informazioni di autenticazione nelle richieste. Il calcolo delle AWS firme nella versione 4 di Signature può essere un'impresa complessa e ti consigliamo di utilizzare AWS SDKs o CLI quando possibile.
Ogni HTTPS richiestaHTTP/che utilizza la firma Signature Version 4 deve contenere questi elementi.
Specifica dell'endpoint
Speciifica il DNS nome dell'endpoint a cui si invia la richiesta. Questo nome di solito contiene il codice del servizio e la regione. Ad esempio, l'endpoint Amazon DynamoDB per la regione us-east-1
è dynamodb.us-east-1.amazonaws.com
.
Per le richieste HTTP /1.1, è necessario includere l'intestazione. Host
Per le richieste HTTP /2, puoi includere l'intestazione o l':authority
intestazione. Host
Utilizzate solo l':authority
intestazione per la conformità con la specifica /2. HTTP Non tutti i servizi supportano le richieste HTTP /2.
Per gli endpoint supportati da ciascun servizio, consulta Endpoint e quote del servizio nella Riferimenti generali di AWS.
Azione
Specifica un'APIazione per il servizio. Ad esempio, l'azione CreateTable
DynamoDB o l'azione Amazon. EC2 DescribeInstances
Per le operazioni supportate da ciascun servizio, consulta la Guida di riferimento per l'autorizzazione del servizio.
Parametri dell'operazione
Specifica i parametri per l'operazione specificata nella richiesta. Ogni AWS API azione ha una serie di parametri obbligatori e opzionali. La API versione è in genere un parametro obbligatorio.
Per i parametri supportati da un'APIazione, consulta la Guida API di riferimento per il servizio.
Data
Specifica la data e l'ora della richiesta. Con la data e l'ora nella richiesta puoi evitare che le terze parti intercettino la tua richiesta e la inviino in un secondo momento. La data specificata nell'ambito delle credenziali deve corrispondere alla data della richiesta.
Il timestamp deve essere UTC e utilizzare il seguente formato ISO 8601: YYYYMMDDT Z. HHMMSS Ad esempio 20220830T123600Z
. Non includere i millisecondi nel time stamp.
Si può utilizzare un'intestazione date
, un'intestazione x-amz-date
o includere x-amz-date
come parametro di query. Se non riusciamo a trovare un'intestazione x-amz-date
, cerchiamo un'intestazione date
.
Informazioni sull'autenticazione
Ogni richiesta inviata deve includere le seguenti informazioni. AWS utilizza queste informazioni per garantire la validità e l'autenticità della richiesta.
-
Algoritmo: utilizza
AWS 4-HMAC-SHA256
per specificare Signature Version 4 con l'algoritmo hashHMAC-SHA256
. -
Credenziale: una stringa composta dall'ID della chiave di accesso, dalla data in YYYYMMDDformato, dal codice regionale, dal codice di servizio e dalla stringa di
aws4_request
terminazione, separati da barre (/). Devi utilizzare caratteri minuscoli per la regione, il codice del servizio e la stringa di chiusura.AKIAIOSFODNN7EXAMPLE
/YYYYMMDD
/region
/service
/aws4_request -
Intestazioni firmate: le HTTP intestazioni da includere nella firma, separate da punto e virgola (;). Ad esempio
host;x-amz-date
. -
Firma: una stringa con codifica esadecimale che rappresenta la firma calcolata. Devi calcolare la firma utilizzando l'algoritmo specificato nel parametro
Algorithm
.
Per ulteriori informazioni, consulta Metodi di autenticazione