Salta al contenuto

Come posso risolvere l'errore "Request has expired" quando provo ad accedere a un oggetto S3?

2 minuti di lettura
0

Quando provo ad accedere a un oggetto in Amazon Simple Storage Service (Amazon S3), ricevo il messaggio di errore "Request has expired".

Risoluzione

Amazon S3 restituisce questo messaggio di errore quando tenti di accedere a un URL prefirmato oltre la data di scadenza specificata dall'URL.

Ad esempio, nella risposta seguente la data di scadenza dell'URL prefirmato è il 28 ottobre 2022. Ricevi un messaggio di errore se tenti di accedere all'URL prefirmato dopo il 28 ottobre 2022:

<Error>
    <Code>AccessDenied</Code>
    <Message>Request has expired</Message>
    <Expires>2022-10-28T07:13:14Z</Expires>
    <ServerTime>2022-10-28T20:03:02Z</ServerTime>
    <RequestId>87E1D2CFAAA7F9A6</RequestId>
    <HostId>
    A9BEluTV2hk3ltdFkixvQFa/yUBfUSgDjptwphKze+jXR6tYbpHCx8Z7y6WTfxu3rS4cGk5/WTQ=
    </HostId>
</Error>

Per risolvere il problema, devi creare un nuovo URL prefirmato per accedere all'oggetto. Puoi impostare la scadenza dell'URL tra 1 minuto e 12 ore utilizzando la console Amazon S3 per impostare l'ora di scadenza. In alternativa, puoi impostare la scadenza fino a 7 giorni utilizzando l'Interfaccia della linea di comando AWS (AWS CLI) o gli AWS SDK.

Per creare un nuovo URL prefirmato, utilizza una delle seguenti credenziali:

  • Profilo dell'istanza AWS Identity and Access Management (AWS IAM)
  • Servizio token di sicurezza AWS
  • Utente IAM

Nota: se utilizzi un token temporaneo per creare un URL prefirmato, l'URL scade quando scade il token. Un URL prefirmato scade quando la credenziale utilizzata per creare l'URL viene revocata, eliminata o disattivata. Ciò è vero anche quando imposti la scadenza dell'URL in un secondo momento rispetto alla credenziale.

Informazioni correlate

Scadenza degli URL prefirmati

Perché l'URL prefirmato per il mio bucket Amazon S3 è scaduto prima della scadenza che ho specificato?