我嘗試使用谷歌雲存儲Java庫Scala中列出的水桶訪問谷歌雲存儲變得「403禁止」
val credential = new GoogleCredential.Builder()
.setTransport(GoogleNetHttpTransport.newTrustedTransport())
.setJsonFactory(JacksonFactory.getDefaultInstance())
.setServiceAccountId("[email protected]")
.setServiceAccountScopes(Collections.singleton(StorageScopes.DEVSTORAGE_READ_ONLY))
.setServiceAccountPrivateKeyFromP12File(new File("file.p12"))
.build()
val storage = new Storage.Builder(
GoogleNetHttpTransport.newTrustedTransport(),
JacksonFactory.getDefaultInstance(),
credential)
.setHttpRequestInitializer(credential)
.setApplicationName("app")
.build()
storage.objects.list("bucket").execute
項目,但是我得到了
com.google.api.client.googleapis.json.GoogleJsonResponseException: 403 Forbidden
{
"code" : 403,
"errors" : [ {
"domain" : "global",
"message" : "Forbidden",
"reason" : "forbidden"
} ],
"message" : "Forbidden"
}
我的電子郵件帳戶可以訪問存儲桶,我也可以通過在我的帳戶中創建項目來使用gsutil訪問它。 我在我的賬戶的一個項目中創建了[email protected],任何想法,我該如何設置權限?
此解決方案不安全!任何人都可以對APK進行反向工程並獲得您的P12密鑰。您的Google可能存儲帳戶可能會遭到入侵。這是我提出的未解答的問題,因爲我也在尋找解決方案! http://stackoverflow.com/q/28001476/3216207 – Oru 2015-01-19 20:07:13