2012-08-10 49 views
0

我試圖使用appengine的blobstore來安全地存儲和訪問文件。該文件只能由文件所屬組的成員訪問。我正在通過查詢成員的組來實現數據存儲中的組的訪問控制,並且如果實體是組的一部分,則實體允許訪問該實體,該實體只存儲在實體中的字段中。這怎麼能在blobstore中實現?似乎沒有任何元數據與blob一起存儲,除了使用文件Api時的文件名。Appengine blobstore訪問控制(java)

我打算通過一個servlet來服務blob,並希望在服務blob之前檢查成員帳戶。有任何想法嗎???

回答

0

Blobstore訪問goes always through your servlet。在致電blobstoreService.serve(..)之前,您可以實施您的訪問控制。

+0

我明白這一點......我的問題是如何知道blob屬於哪個組? – Patrick 2012-08-10 19:24:32

+0

是的,blostore中沒有元數據,因此您需要將數據存儲中的blobstore密鑰存儲在元數據中。在我的項目中,我創建了一個BlobMetadata實體,用於存儲密鑰和所有相關屬性。 – 2012-08-10 21:48:17

+0

看起來這就是我將要做的。 Blob密鑰可能會很好地用於密鑰名稱。 – Patrick 2012-08-12 02:38:00