2013-01-23 20 views
5

Sto utilizzando il servizio di archiviazione BLOB BLU di Windows. Voglio proteggere i miei BLOB dall'accesso pubblico (tranne i miei utenti). Per questo ho usato Shared Access Signature (SAS) e funziona perfettamente. Ma il mio problema è che ho un contenitore che contiene blob in una struttura di directory, come:Come proteggere i BLOB BLU

https://xxxxxxx.blob.core.windows.net/myContainer/directory1/blob1 
    https://xxxxxxx.blob.core.windows.net/myContainer/directory1/blob2 
    https://xxxxxxx.blob.core.windows.net/myContainer/directory1/blob3 
    https://xxxxxxx.blob.core.windows.net/myContainer/directory1/blob4 
    https://xxxxxxx.blob.core.windows.net/myContainer/directory1/blob5 

    https://xxxxxxx.blob.core.windows.net/myContainer/directory2/blob1  
    https://xxxxxxx.blob.core.windows.net/myContainer/directory2/blob2  
    https://xxxxxxx.blob.core.windows.net/myContainer/directory2/blob3  
    https://xxxxxxx.blob.core.windows.net/myContainer/directory2/blob4  
    https://xxxxxxx.blob.core.windows.net/myContainer/directory2/blob5 

    and so on... 

Ora la mia richiesta è che voglio dare l'accesso del pubblico a tutte le macchie di myContainer under directory2 ma non blob che è sotto directory1 , voglio mantenere tutti i BLOB sotto directory1 come privati. Come posso raggiungere questo obiettivo?

risposta

2

È possibile creare due contenitori.

Un contenitore privati ​​con SAS a livello Contenitore e Un contenitore accesso del pubblico

https://xxxxxxx.blob.core.windows.net/private/blob1 
    https://xxxxxxx.blob.core.windows.net/private/blob2 
    https://xxxxxxx.blob.core.windows.net/private/blob3 
    https://xxxxxxx.blob.core.windows.net/private/blob4 
    https://xxxxxxx.blob.core.windows.net/private/blob5 

    https://xxxxxxx.blob.core.windows.net/public/blob1  
    https://xxxxxxx.blob.core.windows.net/public/blob2  
    https://xxxxxxx.blob.core.windows.net/public/blob3  
    https://xxxxxxx.blob.core.windows.net/public/blob4  
    https://xxxxxxx.blob.core.windows.net/public/blob5 
1

È possibile impostare solo le autorizzazioni a livello di contenitore, quindi restano due opzioni.

Opzione preferita) Crea un contenitore pubblico aggiuntivo e sposta i tuoi BLOB. Opzione peggiore) Crea un collegamento sas valido apparentemente senza fine per tutti i tuoi file.

3

Non ci sono directory nell'archiviazione BLOB di Azure. Quelle "directory" che hai ora sono solo blob con un / incorporato nel nome. Poiché le autorizzazioni sono solo a livello di contenitore, dovrai creare contenitori separati.

+3

+1 per ricordare che non ci sono le directory. – JustAnotherUserYouMayKnow

Problemi correlati