Azure blob从私有变为公共
我在Azure上的容器中创建了一个私有blob 不幸的是,当我上传文件时,它变为公共文件。我尝试过在上传时将文件设置为私有,因为这可能是问题所在,但我找不到任何东西 你知道为什么会这样吗 上传时是否应区别对待私人文件 我的上传代码:Azure blob从私有变为公共,azure,blob,private,public,Azure,Blob,Private,Public,我在Azure上的容器中创建了一个私有blob 不幸的是,当我上传文件时,它变为公共文件。我尝试过在上传时将文件设置为私有,因为这可能是问题所在,但我找不到任何东西 你知道为什么会这样吗 上传时是否应区别对待私人文件 我的上传代码: CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient(); CloudBlobContainer container = blobClient.GetContainerReference
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference(containerName);
if (file != null)
{
CloudBlockBlob blockBlob = container.GetBlockBlobReference(filename);
blockBlob.UploadFromStream(file.InputStream);
blockBlob.Properties.ContentEncoding = MimeTypes.GetContentType(filename);
if (ht != null)
{
foreach (DictionaryEntry item in ht)
{
blockBlob.Metadata[item.Key.ToString()] = item.Value.ToString();
}
blockBlob.SetMetadata();
}
blockBlob.Metadata["Created"] = DateTime.UtcNow.ToString();
blockBlob.SetProperties();
}
代码似乎没问题,请看这里: 您的blob将获得与容器相同的访问权限 一些额外信息:您似乎正在使用StorageClient Library v1.7。此版本已弃用,建议使用v3.0版本()
不过,StorageClient库v.3.0.0中有一个使用本地(测试)计算机上的容器的版本 你能分享一些代码吗?我觉得你的代码很好。事实上,代码中没有对blob容器执行任何操作。两件事:1)你所说的私人blob是什么意思?没有所谓的私人污点。ACL(私有/公共)适用于容器级别。您是否看到容器的ACL正在从私有变为公共?2) 你能分享一下创建blob容器的代码吗?我的错。我有一个私有的容器,当我上传一个文件时,它会变为公共的(至少在某个时候它会改变)。我在Azure管理中创建了容器。发现错误。这是我的错。复制/粘贴时潜入以下代码:container.SetPermissions(新BlobContainerPermissions{PublicAccess=BlobContainerPublicAccessType.Blob});