问题标签 [josso]

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 回答
91 浏览

single-sign-on - OpenAM 或 JOSSO2 是否允许多个并发身份存储?

我正在评估 SSO 解决方案,目前正在研究 OpenAM 和 JOSSO2

我对 SSO、OpenAM、JOSSO2 非常陌生,现在正试图学习我需要学习的内容。

我的应用程序需要能够针对至少两个不同的身份存储对用户进行身份验证。

  1. 本地数据库存储(Oracle,开始只是一个简单的用户/通行证)
  2. Active Directory(具有 x.509 双重身份验证要求)

有两类用户,它们将针对一种或另一种进行身份验证(并且从不两者)。

是否可以设置 OpenAM 或 JOSSO2 来处理这种情况?在以前的工作(生活)中,我曾在一个使用 JOSSO_1_ 来完成此任务的系统上工作,但我希望对当前产品有更精细的方法(例如更少的自定义代码)。

0 投票
1 回答
162 浏览

java - 恢复发送到 EJB 的环境属性

我有一个委托,它通过 InitialContext 实例化相应的 Bean 发送凭据(Josso 身份验证),如下所示

在 Bean,我尝试过使用 SessionContext 恢复 Josso Data,如下图所示:

我面临的问题是我无法在 Bean 范围内检索 Josso 数据。我已经尝试过“context.getEnvironment()”,但这种方法已被弃用,我没有找到任何替代方法。

为了找到解决方案,我尝试过:

但是前两个命令只返回 Bean 本身,最后一个只返回全局变量。

“context.getEnvironment()”的正确替代方法是什么?

0 投票
0 回答
170 浏览

web-services - BIRT - 将自定义身份验证标头添加到 SOAP Web 服务

我正在使用 BIRT 4.3.1,我的数据源是一个 Web 服务。身份验证由 Josso 完成,JOSSOID 在我的报告中可用。

我试图通过 SoapUi 在标题中添加 JOSSOID 来调用此 Web 服务。但我需要知道如何通过 BIRT 来做到这一点。我使用 BIRTEclipse 来编辑/查看报告本身。

我搜索了一些关于 WSSE 的内容,但是这个协议需要用户名和密码,而我只有 JOSSOID。

如何向此 HTTP 请求添加自定义标头?

0 投票
3 回答
1292 浏览

tomcat - Tomcat 7 上的 Josso 1.8.10 - 启动 SSO 代理时出错

tomcat 7上安装josso 1.8.10后,我尝试运行命令,但出现此错误:catalina run

更新 :

对于命令,在我使用的 josso 控制台下,安装:网关:

中介 :

样品:

当我在论坛上查找时,我找不到任何解决方案。任何想法 ?

0 投票
1 回答
2988 浏览

java - Java Web 应用程序的智能卡身份验证在哪里进行?

试图确定 CAC/Active Directory (AD) 身份验证在基于 Java 的 Web 应用程序中发挥作用时,我感到很困惑。以托管在多个 Weblogic 容器上的多个 J2E JSF 应用程序为例。这些应用程序中的每一个都通过检查用户所处的 AD 角色来限制用户的访问。如果所有这些应用程序都需要,在什么阶段执行 CAC/AD 身份验证?

我的理解是,理想情况下,您希望网关与执行身份验证的应用程序分开。一个简单的例子是 F5 硬件/软件捆绑包。一旦用户使用他们的 CAC/pin 组合进行身份验证,他们就会被转发到 Weblogic 上已部署的应用程序,并在其标头中包含一些附加信息(如前面提到的 AD 角色)。我并不是说我应该购买它,因为没有可编程的解决方案,而是作为一个例子,认证和使用资源是两个独立的实体,不应该为这个问题结合起来。

然而,在实践中,我读到许多项目正在结合 Microsoft 和 Apache 服务来允许身份验证。这是一篇很好的博客文章,概述了一些好处。一旦用户通过 IIS 进行身份验证,他们就会被转发到 apache 上的应用程序。无论如何,混合 IIS 和 Weblogic 似乎是一个坏主意,尤其是在尝试配置两个节点之间的通信时。

堆栈和网络上也有许多帖子,可以追溯到 2012 年前的日子,它们推荐了不同的解决方案。一篇文章建议以下内容:

当服务器验证客户端证书时,您可以指定一组可接受的证书策略

虽然答案在一般意义上是有道理的,但作者从不深入探讨这种交流的架构细节。其他一些帖子推荐JOSSO来执行 SSO 功能,例如前面提到的网关机制。这篇文章还讨论了使用PKCS11通过使用制造商提供的驱动程序直接读取智能卡。还有一些没有答案的问题,例如Authenticating AD server user using DOD发出的CAC in java

考虑到其中一些帖子之间平均间隔 5 年,我不确定今天针对此问题的最佳实践是什么。网关方法是进行身份验证的理想方法吗?难道我的想法根本不适用并且存在更好的解决方案吗?

0 投票
0 回答
1345 浏览

java - 如何创建 SAML 2.0 身份提供者

我的任务是创建一个 saml 2.0 身份提供者和一个服务提供者,但我对单点登录的概念完全空白。

我尝试过 JOSSO,但使用它时遇到问题。

有没有其他方法可以创建身份提供者。谁能指导我这个话题。

0 投票
1 回答
149 浏览

spring - JOSSO 1.8.10 是否支持 SAML 2.0?

josso 1.8.10 是否支持 saml 2.0 ?如果是这样,我如何配置为使用 saml 2.0 ?

我将不胜感激任何帮助。

0 投票
2 回答
3348 浏览

java - 带有 UTF-8 编码的 Tomcat 7

案例 1:我有一个带有 Ubuntu 和 Tomcat 7.x 的虚拟机。如果我将带有特殊字符的数据发布到服务器就可以了。我有一个在任何 servlet 之前运行的过滤器并将编码设置为 UTF-8request.setCharacterEncoding("utf-8");

案例 2:在同一个虚拟机中,我安装了其他 Tomcat 7.x(回复)。现在我在 Tomcat 7.x 上安装了 JOSSO 1.8.6。在此之后,当我尝试提交带有特殊字符的 POST 数据时,servlet 无法正确解码request.getParameter("reportText");

我相信 JOSSO 有任何在我的编码过滤器之前运行的过滤器并使用使我的过滤器request.setCharacterEncoding("utf-8")无用的请求。

我试图解决的问题:

  • 我在 Tomcat 连接器标记 (server.xml) 处设置了 URIEncoding="utf-8"。
  • 我使用了 setCharacterEncoding()。
  • 我已经设置了JAVA_OPTS="$JAVA_OPTS -Djavax.servlet.request.encoding=UTF-8 -Dfile.encoding=UTF-8"tomcat setenv.sh
  • 我检查了 HTTP 标头,它们是正确的(Content-Type=text/plain;charset=utf-8)
  • 我已启用 Tomcat 过滤器setCharacterEncodingFilter

POST 请求由客户端 JSP 生成

我的 JSP 标签在顶部:

POST 标头: 带有标头的图像

有任何想法吗?谢谢你。

0 投票
1 回答
357 浏览

apache - org.apache.catalina.LifecycleException:无法停止组件 [SingleSignOn[]]

我正在使用带有 JOSSO 单点登录的 Apache Tomcat 8.5.12。配置后,我无法启动 tomcat 服务器,并收到此错误。一切都配置得很好。有没有人有一个想法可以帮助我启动服务器?在此处输入图像描述

0 投票
0 回答
229 浏览

java - JOSSO 会话索引

我们很少有应用程序在同一个 tomcat 上运行,例如:app1.local、app2.local、app3.local...

当用户在其中一个中进行身份验证时,我们在 AgentFilter 的实现中从 JOSSO 获取 cookie,在这里我们使用 JOSSO_SESSIONID 进行一些操作。

Cookies 仅包含JSESSIONIDJOSSO_SESSIONID
它们总是不同的,然后用户在 app1、app2 和 app3 之间切换,但我发现 JOSSO 服务器上的“SESSION_INDEX”对于用户来说总是相同的。

似乎“SESSION_INDEX”只为用户更新,直到他退出或超时,我认为 SESSION_INDEX 就像我们的 IdentityProvider 的 JOSSO_SESSIONID,而不是我们为每个实例(app1、app2、app3)创建的 ServiceProvider。

所以问题是:

如何将 cookie 中的“SESSION_INDEX”从 JOSSO 传递到我们的代理过滤器?或者也许不在饼干里?

也许我可以使用josso_assertion_id某种方式来获取 session_index 的值?我只知道如何使用 josso_assertion_id 来获取 JOSSO_SESSIONID。

我将不胜感激任何帮助!!!