我正在编写一个应用程序,可以使用各种设备访问一些虚构的实验室。我将 Java 与 CORBA 结合使用。问题是许多用户可以同时尝试访问这些设备。只有一个人应该获得它并积极使用,而其他用户只能收到有关设备状态更改的通知。 如果我有一种方法来识别谁调用了设备上的方法,那么实现起来就会很容易。如果是以前获得该设备的调用者,他就会为所欲为。如果是其他用户,那么我会在非法方法调用上抛出适当的异常。
如何获取来电者身份? 如何实现身份验证逻辑,使其独立于业务(实验室:P)逻辑? CORBA 有类似“拦截器”之类的东西吗?
我真的很指望你们 StackOverflowers :) 我的时间很短来实现它..
最佳答案
是的。 CORBA 有拦截器,是的,您可以使用它们。它们并不是真正独立于您的业务逻辑,但业务逻辑并不依赖于身份验证和授权。
坏消息是没有简单的方法来实现这一点。
拦截器逻辑取决于您的 CORBA 实现。您写道,您已用 Java 实现了它,但未确定您使用的是哪个 CORBA 实现。这可能是 SUN/Oracle-with-Java-shipped-ORB、JacORB、Bea Weblogic 等。
CORBA 安全性的一般介绍可以在以下位置找到:
如果您提供有关 ORB 的更多信息,就有可能提供更多帮助...
关于java - CORBA 中的身份验证/访问控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10288030/