首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >限制由spring-data-rest返回的文档

限制由spring-data-rest返回的文档
EN

Stack Overflow用户
提问于 2016-02-22 16:32:49
回答 1查看 319关注 0票数 0

Dog使用私有字段owner将所有者用户名保存在User类(实现UserDetails)中:

代码语言:javascript
复制
@Document
public class Dog {

    @Id
    private ObjectId id;

    private String owner;
}

@Document
public class User implements UserDetails {

    @Id
    private ObjectId id;

    private String username;

}

这些文档使用spring-data-mongodb持久化,并使用spring-data-rest公开。用户是使用Security进行身份验证的,因此它可以作为@AuthenticationPrincipal使用。

要求REST只能访问用户拥有的狗。是否可以调整spring-data-rest,使其只返回集合dogs中的一个文档子集,其中带有'owner‘字段的文档与身份验证主体返回的User实例中的用户名相同?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-28 19:46:11

在这种情况下,我所做的是实现自定义RepositoryInvoker

调用者是Spring数据Rest创建的代理。其想法是拦截invokeFindAll (或其他应按所有权进行筛选的方法),并将其委托给实现筛选的查询方法。

注意,I使用Spring和光谱实现过滤谓词。我认为类似的方法在蒙戈应该可行。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35558871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档