Pe blob-urile din Windows Azure putem sa stocam orice fel de conținut, de la poze si filme la carti sau arhive. Cand vrem sa partajam aceasta informație cu alte persoane apare mai multe intrebari:
Prima varianta este "Full public read access". Un utilizator anonim poate sa citească din orice blob sau container. Acesta poate sa itereze in interiorul container. Singurul lucru pe care nu il poate sa faca este sa intereze prin containere.
A doua varianta este "Public read access for blobs only". Aceasta se aseamana cu prima varianta, doar ca un utilizator nu poate sa itereze prin conținutul unui container.
Ultima si cea mai restrictiva din variante este "No public read access". In acest caz un utilizator anonim nu poate sa citească sau sa parcurgă nici un blob sau container.
Pentru a putea seta aceste valori avem la dispozitie enum-ul BlobContainerPublicAccessType.
In exemplul de mai jos setam acest flag la al doilea nivel:
- Ce poate sa faca un utilizator pe blob?
- Ce poate sa faca un utilizator pe container?
- Un utilizator are dreptul sa acceseze container-ul si sa il parcurgă?
Prima varianta este "Full public read access". Un utilizator anonim poate sa citească din orice blob sau container. Acesta poate sa itereze in interiorul container. Singurul lucru pe care nu il poate sa faca este sa intereze prin containere.
A doua varianta este "Public read access for blobs only". Aceasta se aseamana cu prima varianta, doar ca un utilizator nu poate sa itereze prin conținutul unui container.
Ultima si cea mai restrictiva din variante este "No public read access". In acest caz un utilizator anonim nu poate sa citească sau sa parcurgă nici un blob sau container.
Pentru a putea seta aceste valori avem la dispozitie enum-ul BlobContainerPublicAccessType.
In exemplul de mai jos setam acest flag la al doilea nivel:
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
var container = blobClient.GetContainerReference("abcdefg");
container.CreateIfNotExist();
var permissions = container.GetPermissions();
permissions.PublicAccess = BlobContainerPublicAccessType.Container;
container.SetPermissions(permissions);
Comments
Post a Comment