如何在创建时将域添加到Google云端存储对象ACL?

时间:2014-08-19 21:37:32

标签: java google-app-engine acl google-cloud-storage

在我的基于Java的应用程序引擎项目中,我允许用户将文件上传到谷歌云存储(这可行),但我似乎无法将特定域添加到访问列表中,因此只有来自我的人公司可以访问我的文件。我该怎么做?

我尝试使用:

    GcsService gcsService = GcsServiceFactory.createGcsService(RetryParams.getDefaultInstance());
    GcsFilename gcsFileName = new GcsFilename("my-bucket", user_uploaded_file_name);
    Builder fileOptionsBuilder = new GcsFileOptions.Builder();
    fileOptionsBuilder.mimeType(mimeType);
    fileOptionsBuilder.acl("authenticated-read"); // how do i modify this list?
    GcsFileOptions fileOptions = fileOptionsBuilder.build();
    GcsOutputChannel outputChannel = gcsService.createOrReplace(gcsFileName, fileOptions);

这个authenticated-read只是公开文件(不是我想要的)。我想将组织“@ mycompany.com”中的所有人添加到访问列表中。我通过代码这样做吗?或者我是使用谷歌云控制台吗?

我将通过此网址向人们提供他们上传文件的链接:

String url = https://console.developers.google.com/m/cloudstorage/b/" + "my-bucket" + "/o/" + user_uploaded_file_name;

1 个答案:

答案 0 :(得分:1)

哇,哇。这家伙真的很有帮助,有一个Java版本:

Changing ACL for Google Cloud Storage from Appengine (JAVA)

这完全适合我!

相关问题