Condividere un oggetto con un indirizzo temporaneo

Come condividere un oggetto senza fornire informazioni personali

Ultimo aggiornamento: 24/10/2019

Obiettivo

OpenStack Swift è un servizio di storage di oggetti che permette di archiviare un grande numero di file. Per poterli gestire è necessario autenticarsi con un token ogni volta che si esegue una richiesta API, in modo da verificare i permessi di lettura e scrittura su Swift. Il token viene generato dal sistema di autenticazione tramite le credenziali dell’utente.

Per condividere un file con un amico o un collega senza fornire le informazioni personali relative all’autenticazione, è possibile creare un indirizzo temporaneo (TempURL).

Questa guida ti mostra come utilizzare la funzionalità TempURL per condividere temporaneamente un file.

Prerequisiti

Procedura

Principio di funzionamento

TempURL è una funzionalità che permette di decidere quali file condividere, mettendoli a disposizione per un tempo stabilito. L’indirizzo temporaneo viene generato utilizzando questi elementi:

  • indirizzo del punto di accesso (ad esempio “https://storage.sbg1.cloud.ovh.net”)
  • percorso completo dell’oggetto che contiene il progetto, il container e il nome dell’oggetto (ad esempio v1/AUTH_tenant/default/file)
  • parametro tempurlsign, che corrisponde alla firma generata in base a chiave di sicurezza, metodo HTTP, percorso del file e data di scadenza
  • parametro url_expires, che corrisponde alla data di scadenza dell’indirizzo temporaneo

Genera l’indirizzo temporaneo (TempURL)

1. Genera la chiave

Per prima cosa è necessario generare una chiave, che potrà essere utilizzata per tutti i file del progetto e i futuri indirizzi temporanei.

Per motivi di sicurezza consigliamo di scegliere una chiave lunga (almeno 20 caratteri), anche se è possibile crearne una nuova in qualsiasi momento.

Per generare la chiave sono disponibili diverse soluzioni, come i comandi sha512sum e sha256sum. Utilizza il metodo più adatto alla tua situazione e al livello di cifratura desiderato. Ecco alcuni esempi, dal più al meno efficace:

  • date +%s | sha512sum
  • date +%s | sha256sum
  • date +%s | md5sum

Una volta generata la chiave, è possibile configurarla sul progetto tramite il client Swift (ricordati di sostituire la stringa “12345” con la tua chiave):

swift post -m "Temp-URL-Key: 12345"

o con curl:

curl -i -X POST \ -H "X-Account-Meta-Temp-URL-Key: 12345" \ -H "X-Auth-Token: abcdef12345" \ https://storage.sbg1.cloud.ovh.net/v1/AUTH_ProjectID

Il nome completo dell’header è X-Account-Meta-Temp-Url-Key ma il client Swift utilizza Temp-Url-Key perché aggiunge automaticamente X-Account-Meta.

Una volta configurata la chiave sull’account, utilizza il client Swift per verificare la corretta applicazione dell’header:

swift stat

O con curl:

curl -i -X HEAD \ -H "X-Auth-Token: abcdef12345" \ https://storage.sbg1.cloud.ovh.net/v1/AUTH_ProjectID

2. Genera l’URL

Queste operazioni possono essere effettuate offline. Per generare l'indirizzo temporaneo è possibile utilizzare il comando indicato qui sotto, sostituendo i valori generici con le proprie informazioni.

Ad esempio:

  • GET: metodo HTTP
  • 60: link disponibile per 60 secondi (valore personalizzabile)
  • /v1/AUTH_tenant/default/file: percorso verso il file (in questa fase, non è necessario aggiungere il punto di accesso)
  • 12345: da sostituire con la propria chiave
swift tempurl GET 60 /v1/AUTH_tenant/default/file 12345

Lo script fornirà un TempURL in cui è indicato percorso del file, firma e data di scadenza.

v1/AUTH_tenant/default/file?temp_url_sig=8016dsdf3122d526afds60911cde59fds3&temp_url_expires=1401548543

Per il corretto funzionamento dell’URL è sufficiente aggiungere l’indirizzo del punto di accesso davanti al proprio Temp URL:

https://storage.sbg1.cloud.ovh.net/v1/AUTH_tenant/default/file?temp_url_sig=8016dsdf3122d526afds60911cde59fds3&temp_url_expires=1401548543

Nel nostro esempio, l’URL temporaneo permette a chiunque di scaricare l’oggetto file dal container default, entro 60 secondi e senza autenticazione. Scaduti i 60 secondi l’URL non sarà più funzionante.

Gli utenti avanzati che intendono generare un Temp URL senza utilizzare lo script swift-temp-url possono consultare la documentazione ufficiale di OpenStack.

Per saperne di più

Contatta la nostra Community di utenti all’indirizzo https://community.ovh.com/en/.


Questa documentazione ti è stata utile?

Prima di inviare la valutazione, proponici dei suggerimenti per migliorare la documentazione.

Immagini, contenuti, struttura... Spiegaci perché, così possiamo migliorarla insieme!

Le richieste di assistenza non sono gestite con questo form. Se ti serve supporto, utilizza il form "Crea un ticket" .

Grazie per averci inviato il tuo feedback.


Potrebbero interessarti anche...

OVHcloud Community

Accedi al tuo spazio nella Community Fai domande, cerca informazioni, pubblica contenuti e interagisci con gli altri membri della Community OVHcloud

Discuss with the OVHcloud community

Conformemente alla Direttiva 2006/112/CE e successive modifiche, a partire dal 01/01/2015 i prezzi IVA inclusa possono variare in base al Paese di residenza del cliente
(i prezzi IVA inclusa pubblicati includono di default l'aliquota IVA attualmente in vigore in Italia).