Public 访问级别:Blob 与容器
Public access level : Blob vs Container
Container 和 Blob 在 Public 访问级别方面有什么区别 ? (见下图蓝框)
A container organizes a set of blobs, similar to a directory in a file system. A storage account can include an unlimited number of containers, and a container can store an unlimited number of blobs.
但我不明白这与 public 访问级别有什么关系。
简单地说,public 访问级别控制您是否可以通过仅使用资源的 URL 匿名访问 blob(或容器的属性)。
此处提供了不同 public 访问级别的说明:https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl。
要详细说明文档,如果访问级别是:
- Private:您无法使用资源 URL 访问资源。例如,如果您的 blob 的 URL 是
https://account.blob.core.windows.net/container/blob.txt
,并且您尝试在浏览器中访问此资源,即使存在该 blob,您也会收到 404 错误。
- Blob:您可以使用 URL 下载 blob 或获取其属性。但是,如果访问级别设置为 Blob,您将无法访问容器的属性。
- Public:类似于
Blob
public访问级别,但是如果容器的ACL设置为public,您可以获得容器的属性以及该容器中的 blob 列表。
Container 和 Blob 在 Public 访问级别方面有什么区别 ? (见下图蓝框)
A container organizes a set of blobs, similar to a directory in a file system. A storage account can include an unlimited number of containers, and a container can store an unlimited number of blobs.
但我不明白这与 public 访问级别有什么关系。
简单地说,public 访问级别控制您是否可以通过仅使用资源的 URL 匿名访问 blob(或容器的属性)。
此处提供了不同 public 访问级别的说明:https://docs.microsoft.com/en-us/rest/api/storageservices/get-container-acl。
要详细说明文档,如果访问级别是:
- Private:您无法使用资源 URL 访问资源。例如,如果您的 blob 的 URL 是
https://account.blob.core.windows.net/container/blob.txt
,并且您尝试在浏览器中访问此资源,即使存在该 blob,您也会收到 404 错误。 - Blob:您可以使用 URL 下载 blob 或获取其属性。但是,如果访问级别设置为 Blob,您将无法访问容器的属性。
- Public:类似于
Blob
public访问级别,但是如果容器的ACL设置为public,您可以获得容器的属性以及该容器中的 blob 列表。