问题标签 [elytron]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
97 浏览

jboss - JBoss CLI:在没有名称属性的元素中添加嵌套元素(在“jwt”中添加“key”元素)

一般来说,我试图在另一个元素中添加一个嵌套元素,其中父元素不包含name属性:

应该变成:

问题是我找不到正确构建CLI命令路径的方法:

给我一个错误Node path format is wrong around 'foo' (index=37).

我认为这是因为foo元素没有属性name


更具体地说,我正在寻找一种在key元素内添加元素的方法jwt

应该变成:

我正在尝试使用的命令:

和我得到的错误:Node path format is wrong around 'jwt' (index=41).

0 投票
0 回答
79 浏览

java - 用于切换不同连接的 Jboss wildfly 21/Jboss EAP 7.3 配置

我要求客户可以拥有 2 个 Jboss 集群(SYSTEM1、SYSTEM2)。每个集群可以包含 2 个 Jboss EAP 7.3 实例。系统 1 节点 1,节点 2 系统 2 节点 3,节点 4

我的客户进行远程查找以连接远程 Jboss 实例。当 UI 启动时,系统组合框会显示给用户以选择系统。如果用户选择 SYSTEM1,客户端对 Node1、Node2 进行 ejb 调用。如果用户选择 SYSTEM2,客户端对 Node3、Node4 进行 ejb 调用。我能够通过 jboss-ejb-client.properties 提供此功能。

根据用户选择,我正在设置连接正确系统的属性

现在这个逻辑不适用于 Jboss EAP7.3。Wildfy Config 是为 ejb 客户端处理而实现的。但是我找不到一种方法来为新的 Jboss 版本提供相同的功能。它不提供聚类功能

0 投票
1 回答
58 浏览

ssl - 将 SSL 配置迁移到 Elytron

我正在尝试将项目从使用 Legacy Security 迁移到使用 Elytron。我按照文档中的步骤操作:https ://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.1/html/migration_guide/migrating_to_elytron#migrate_ssl_configurations

我首先通过运行验证它:

结果:

然后我按照文档中的步骤创建了一个 key-store、key-manager、server-ssl-context,并切换了 https-listener。并重新加载服务器。

然后我再次检查了 https-listener:

但结果是不确定的。

当我检查standalone-full-ha.xml 时,SSLContext 就在那里。有没有其他方法可以检查迁移是否正常?

0 投票
1 回答
318 浏览

ejb - Wildfly 24 中带有 Elytron 的多个 sasl 身份验证机制

我已经设置 Wildfly 以使用 OAUTHBEARER 身份验证机制在我的服务器和桌面应用程序之间进行远程 JNDI EJB 查找,并且效果很好。

但是,我还想设置一个简单的基于 .properties 文件的身份验证方法,以便在没有令牌的情况下与服务器进行通信以便能够请求一个,或者访问有关 keycloak 身份验证服务器的信息,因为我不想将其硬编码到我的客户端中应用程序,我似乎无法使其工作。无论我做什么,服务器都会拒绝我的身份验证尝试。

我试图访问预身份验证 bean 的示例代码如下所示:

这是我得到的堆栈跟踪:

如果我要提供令牌,则承载机制有效,似乎由于某种原因其他机制没有进行身份验证

以下是我修改的 Wildfly 24 Standalone.xml 中的部分:

EJB 子系统:

Elytron 子系统:

  • 我想使用 PreAuthRealm 进行简单的身份验证。
  • 我想使用 application-users.properties 文件来存储用户名和密码,这些凭据是通过 add-user.sh 脚本添加到存储中的
  • sasl 身份验证工厂设置:

远程子系统:

奇怪的是,如果我sasl-authentication-factory="application-sasl-authentication"从 Remoting 子系统中删除,并放回原来security-realm="ApplicationRealm"的上述代码运行,它实际上从 .properties 文件中对我进行身份验证,但是当然承载令牌部分将不起作用,这是整点。

我在这里的设置缺少什么?我想达到什么目标?

0 投票
0 回答
92 浏览

security - Elytron SSL 配置迁移

我正在尝试将项目从使用 Legacy Security 迁移到使用 Elytron。我按照文档中的步骤操作:https ://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.1/html/migration_guide/migrating_to_elytron#migrate_ssl_configurations

我按照文档中的步骤创建了密钥库、密钥管理器、server-ssl-context,并切换了 https-listener。并重新加载服务器。

这就是我所要做的吗?还是我缺少使用 Elytron SSL 配置的东西?

0 投票
2 回答
542 浏览

java - 配置 LDAPS Wildfly 25 Elytron

我正在尝试在 Wildfly 25 上的 Elytron 上配置 LDAPS,但我不知道我缺少什么。

我总是收到此错误,因为服务器拒绝非 SSL 连接:

我想我在standalone.xml 的目录上下文中遗漏了一些东西,有什么想法吗?

0 投票
2 回答
160 浏览

java - 如何在 Java Servlet 上触发 OAuth/OpenID 身份验证并将我自己的角色添加到用户?

在本地 Wildfly 服务器上,我有一个简单的 Java servlet,如下所示:

我已经使用 OpenID Connect (OIDC) 和第三方身份验证服务器设置了 Wildfly 的 Elytron v1.17.2 身份验证。如果重要的话,它不是Keycloak 服务器,也不能更改身份验证服务器;使用此身份验证服务器是一项严格的业务要求。auth 服务器有一堆我们想要访问的用户,但是对于我的特定 client_id,没有一个用户具有与他们关联的任何角色,我们希望避免通过 auth 服务器添加角色,因为该过程是......充其量是乏味的。官僚主义的繁文缛节,每一次,每一个用户。我们的最终目标是在该服务器的数据库中拥有我们自己的角色,我们只去第 3 方处理登录,然后验证登录是否有效以及它是哪个用户。

如果我包含rolesAllowed = { "debug" }在 HttpMethodConstraint 中,则第 3 方身份验证服务器的身份验证将被触发并正常工作。但是因为没有一个用户具有与之关联的角色,所以他们没有所需的“调试”角色。该processRequest方法永远不会到达,并且用户会收到“禁止”错误页面。

如果我删除或清空约束的字段,则不会触发与rolesAllowed第三方身份验证服务器的身份验证,并且我们无法使用它来识别用户。UserPrincipal

我已经尝试javax.servlet.Filter在请求到达我的 Servlet 之前将其拦截,但如果需要“调试”角色,则过滤器也不会到达。我曾希望在用户进行身份验证后拦截请求,然后向用户添加角色,或者会话变量,或者我的 servlet 将检查执行各种操作的权限。

我尝试了一些其他没有触发身份验证的组合:

没运气。

有没有一种方法可以触发 3rd-party 身份验证,并使用经过身份验证的用户的用户名/用户 ID 获取 UserPrincipal,而无需特定角色?-或者- 有没有一种方法可以在身份验证之后但在被 HttpMethodConstraint 阻止之前向经过身份验证的用户添加角色?

0 投票
1 回答
58 浏览

java - 在 Wildfly Elytron 安全中使用 2authorization 领域

我想通过 ldap 使用身份验证领域。这工作正常。其次,我想将我的应用程序的 UserRoles 存储在 Roles 表中,这也很好。(下面的示例,带有聚合领域)

但我不知道如何获得这两个角色。来自 LDAP 和我的 Roles 表的角色放在一起。

我错过了什么?

0 投票
0 回答
22 浏览

java - 有哪些现成的选项允许 Wildfly 10.1 服务器使用 JWT 授权请求?

我想使用 JWT 授权保护 Wildfly 10.1 服务器上的 REST 端点。

我的前端(可能稍后为前端的后端)将通过标头将 JWT 传递给我的资源服务器(前面提到的 Wildfly 10.1 服务器),在那里应该验证令牌(使用公钥或通过令牌自省端-点调用)。

  1. 我不希望编写自定义 JWT 验证器(例如使用过滤器或弹簧安全性)。现成的首选。
  2. Elytron 子系统是解决这个问题的完美解决方案(main · wildfly/quickstart · GitHub 上的 quickstart/jaxrs-jwt),但 Wildfly 10.1 不支持它(有没有安装它的方法?)。
  3. 升级到 Wildfly 11+ 是最后的手段。
  4. 我已经有一个 OIDC 提供程序,所以 KeyCloak 适配器是不可能的(对吧?)。

有哪些现成的选项允许 Wildfly 10.1 服务器使用 JWT 授权请求?

0 投票
1 回答
319 浏览

security - Wildfly 25 JSF 安全

我完全清楚wildfly 25 已经放弃了传统的安全领域。所以我尝试从wildfly 20.0.1 迁移到wildfly 25.0.1。

根据快速入门ee-security,我做到了

我还必须在我的 jboss-web.xml 中删除值:

否则我会得到:

我也有自己的 IdentityStore。

当我尝试访问该站点时,登录页面按预期显示。当我提交凭据时,我的 IdentityStore 被调用并且 validate(Credential) 方法返回一个有效的 CredentialValidationResult。

不幸的是,我确实得到了一个异常:

我该怎么做才能让它工作?