gpt4 book ai didi

java - Wildfly 中的 JASPIC 客户端登录

转载 作者:行者123 更新时间:2023-11-29 05:05:34 24 4
gpt4 key购买 nike

我有一个 Java EE Web 应用程序,它在我的 EJB 上使用 JASPIC 和 @RolesAllowed 注释进行保护。我使用托管执行程序服务来运行许多任务。

但是,这些任务未以任何用户身份运行,因此我在尝试访问我的 EJB 时收到权限被拒绝的错误。我试过使用 @RunAs 注释,但这似乎不起作用。

我如何以编程方式进行身份验证?

我有抽象类

    public abstract class AbstractTask implements Runnable...

和一个具体的类,然后我将任务提交给托管执行程序服务

    mes_.submit(task);

我试过将@RunAs 放在两个类上,但都不起作用。

最佳答案

遗憾的是,Java EE 中没有以编程方式在 Web 上下文之外登录的工具。

JASPIC 应该提供这些,但它不知何故被遗忘了,或者他们脑子里有其他事情。 JASPIC 规范文档在最后的某个地方提到了它,他们稍后会调查它,但它从未发生过。

@RunAs 有点受限,但在这种情况下应该可以正常工作。您可能需要提供一些代码,而 WildFly 可能需要为此进行一些自定义配置。

您的 @RolesAllowed 注释 EJB 方法是否仅从托管执行程序服务调用?在 WildFly 8 中,当从 Servlet 调用 EJB 时,@RolesAllowed 会被破坏,但这应该在 WildFly 9 中得到修复。

关于java - Wildfly 中的 JASPIC 客户端登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30506523/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com