当前位置: 首页 > 面试题库 >

EJB3以及JAAS主题/原理如何从servlet容器传播到EJB层?

终翰学
2023-03-14
问题内容

我正在尝试了解JAAS主体如何从Web层传播到Business / EJB层。

我已经阅读过,如果角色/领域是在 web.xml的* login-configsecurity-context
配置的 ,那么servlet容器还将透明地将经过身份验证的主体传递给EJB层。
*

两个问题
1.)首先,更重要的是,这是真的吗?无需开发人员的任何干预!
2)其次,任何想法都是在后台进行的。


问题答案:
  1. 对,是真的。这通常是ejb的重点,可以将“硬”东西从开发人员手中夺走(例如安全性,事务,健壮性,多线程等)。
  2. 它取决于实现。我知道在jboss(至少4.x和更低版本)中,远程方法调用使用了自定义序列化协议,该协议具有可随请求一起发送的任意信息的附加Map。这是身份验证信息以及其他支持集群的内容。对于本地方法调用,我相信他们使用诸如ThreadLocals之类的东西。


 类似资料:
  • 问题内容: 我正在使用自定义主体测试JAAS主题从原始Java运行时上运行的独立EJB客户端到JavaEE服务器的传播。我的目标是JBoss和WebSphere实现。 根据这个论坛主题,我期望它将与JBoss轻松配合。 这是我的EJB客户端代码段: 服务器端代码是: 可以肯定的是,即使这是默认行为,我也将这一部分添加到了会话bean中: 我的会话bean没有任何角色的保护。 根据此IBM WebS

  • 我在windows 10上支持合作代理和运行docker。我已经按照这里的文档在docker上设置了代理。 我能够拉图像,但这些代理设置不传播到容器,例如,当我运行阿尔卑斯环境,它不显示代理conf。下面是我的输出 以下是根据文档的预期输出。 在构建下面的docker文件,我得到连接错误从高山集装箱 Docker版本 DockerFile 错误 将代理作为生成参数传递 我尝试了下面的命令,它成功了

  • 所以我有一个docker容器,里面有一个python应用程序和新的遗迹python代理。在azure devops中,我将容器推送到我的注册表,然后将其释放到Web应用程序容器中。容器中的newrelic.ini文件包含新的遗迹应用程序名称,我现在将其设置为虚拟名称。部署时,该应用程序以虚拟名称报告给新遗迹,因此我知道新遗迹从容器中正确报告。我现在需要做的是根据我将容器部署到的Web应用程序更改应

  • 我在一个独立于主活动的文件中注册了一个广类型接收器,并且基于在广类型接收器中接收到的通知,我想在主活动中执行一些操作。 我的问题是,将通知从广播接收器传递到主活动的推荐方式是什么?是否应该在iam在广播接收器文件中注册的每个操作中创建一个公共方法?或者应该使用将在主活动中实现的接口。 注:广泛的演员接受者登记为7个行动

  • 我正在我的机器上的docker容器中运行服务器。我想从我的机器(主机)向容器内的服务器发送HTTP请求。当我在容器中使用HTTP发送GET请求时,它会检测服务器。但是,如果我向容器的IP地址发送相同的请求(这次是从容器外部的主机),它会告诉我: 或者这个: 下面是我启动容器时使用的命令: 以及我为发送请求而运行的Python脚本: 下面是我用来查找容器IP地址的命令: 我知道这个问题,但我没有使用

  • 问题内容: 我想将多个值从一个servlet传递到另一个servlet。请告诉我如何通过? 问题答案: 取决于您是否使用会话: 使用session.setAttribute()将数组存储在会话变量中。 使用session.getAttribute();检索数组。 但是,变量将一直保留到会话终止,您用其他东西覆盖它或将其删除为止。 如果将一个servlet转发到另一个servlet,则可以将其存储在