JBoss AS:调用者身份没有有效的安全上下文

发布于 2024-11-30 18:14:50 字数 673 浏览 5 评论 0原文

我需要使用 JBoss AS 6 在 SLSB 中获取调用者的用户名。因此,我将其传递给 InitialContext,如下所示:

Context ctx = new InitialContext();
String userName = System.getProperty("user.name");
ctx.addToEnvironment(Context.SECURITY_PRINCIPAL, userName);

在我的 SLSB 中,我尝试使用以下方式访问它:

@Resource
EJBContext ctx;

// ...

String userName = ctx.getCallerPrincipal().getName();

但是,我从 JBoss 收到以下错误:

java.lang.IllegalStateException: No valid security context for the caller identity
    at org.jboss.ejb3.EJBContextImpl.getCallerPrincipal(EJBContextImpl.java:143)

有人可以吗给我一个提示,在 JAAS 世界中我必须在哪个 JBoss AS 文件中配置才能使其启动并运行?

I need to get the caller's user name in a SLSB using JBoss AS 6. Therefore, I passed it to the InitialContext like this:

Context ctx = new InitialContext();
String userName = System.getProperty("user.name");
ctx.addToEnvironment(Context.SECURITY_PRINCIPAL, userName);

In my SLSB I try to access it using:

@Resource
EJBContext ctx;

// ...

String userName = ctx.getCallerPrincipal().getName();

However, I receive the following error from JBoss:

java.lang.IllegalStateException: No valid security context for the caller identity
    at org.jboss.ejb3.EJBContextImpl.getCallerPrincipal(EJBContextImpl.java:143)

Can someone please give me a hint what in the JAAS universe I have to configure in which JBoss AS file to get it up and running?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

南…巷孤猫 2024-12-07 18:14:50

我的问题的答案在

由于我当前不需要身份验证/授权,因此我只是在文件 conf/login-conf 的末尾添加了以下几行。 xml:

  <application-policy name="simple">
    <authentication>
      <login-module code="org.jboss.security.auth.spi.SimpleServerLoginModule" flag="required" />
    </authentication>
  </application-policy>

小心安全风险!!! 我的解决方案使用 SimpleServerLoginModule 没有任何安全性!

The answer to my question is provided in

As I do not need authentication/authorisation currently, I simply added the following lines at the end of file conf/login-conf.xml:

  <application-policy name="simple">
    <authentication>
      <login-module code="org.jboss.security.auth.spi.SimpleServerLoginModule" flag="required" />
    </authentication>
  </application-policy>

Beware of the security risk!!! There is none security with my solution, using the SimpleServerLoginModule!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文