2012-08-10 86 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