如何使用Java在Azure Blob存储中创建/删除共享访问策略?

问题描述

我如何使用Java api创建或删除共享访问策略。

无法获得使用Java SDK创建访问策略的任何正式文档。

下面是我在过程中使用的天蓝色blob依赖项

Gradle dependency: compile group: 'com.azure',name: 'azure-storage-blob',version: '12.8.0'

我找到了一些示例,但看起来它不属于我正在使用的azure-storage-blob依赖项。 https://www.programcreek.com/java-api-examples/?api=com.microsoft.azure.storage.blob.SharedAccessBlobPolicy

JAVA SDK中是否有任何api用于创建/删除blob存储的共享访问策略

enter image description here

解决方法

尝试一下:

import java.time.OffsetDateTime;
import java.util.ArrayList;
import com.azure.storage.blob.BlobContainerClient;
import com.azure.storage.blob.BlobContainerClientBuilder;
import com.azure.storage.blob.models.BlobAccessPolicy;
import com.azure.storage.blob.models.BlobSignedIdentifier;
import com.azure.storage.blob.models.PublicAccessType;

public class App {
        public static void main(String[] args) {
                String connstr = "<storage account conn str>";
                String containerName = "<container name>";

                BlobContainerClient blobContainerClient = new BlobContainerClientBuilder().connectionString(connstr)
                                .containerName(containerName).buildClient();

                BlobSignedIdentifier identifier = new BlobSignedIdentifier().setId("test policy")
                                .setAccessPolicy(new BlobAccessPolicy().setStartsOn(OffsetDateTime.now())
                                                .setExpiresOn(OffsetDateTime.now().plusDays(7))
                                                .setPermissions("cd")); //permission for create and delete

                ArrayList<BlobSignedIdentifier> identifiers = new ArrayList<BlobSignedIdentifier>();
                identifiers.add(identifier);
                blobContainerClient.setAccessPolicy(PublicAccessType.CONTAINER,identifiers);
        }       
}

结果:

enter image description here

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...