在将数据发送给订户NServiceBus之前对其进行过滤

问题描述

| 我有许多客户端,当将新数据添加到我们的数据库表之一时,需要通知这些客户端。 我考虑创建一个服务,该服务每隔X秒检查一次表,并在存在任何新数据时通知客户端。问题是,每个客户端都具有不同的权限,并且不允许查看所有信息。我曾考虑过使用NServiceBus之类的东西来发布带有新信息的消息,但是我需要在发送每个信息之前根据每个客户端的权限来过滤信息。需要在发送信息之前进行过滤(不允许我在客户端上执行过滤)。 NServiceBus是否对此提供内置支持? 如果没有,我如何实现这个目标? 编辑: 这是我在下面的评论中写的一个示例: 说我有一个图书馆。每个客户都有兴趣立即收到有关添加到图书馆的新书的通知,但只允许每个客户获知某种类型的图书。系统应向所有包含新书信息的客户发送通知,但应仅向每个客户通知其特定类型。出于安全原因,我无法过滤客户端中的数据。 谢谢。     

解决方法

        一种可能的选择是仅允许某些客户订阅他们被允许观看的流派。 NSB提供了IAuthorizeSubscriptions接口,可让您确定允许谁订阅消息。通过按流派拆分消息,然后可以使用授权界面允许/拒绝订阅这些流派。     

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...