问题标签 [jasig]

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

java - JASIG CAS 自定义 UI 和设置

我正在开发 Java EE Web 应用程序,现在我需要为几个组件实现 SSO。作为解决方案,我选择了 JASIG CAS 服务器。据我所知,对于像我这样的案例来说,这是最流行的解决方案,但我找不到任何关于如何在不重建 cas-server 源的情况下自定义 UI(登录页面等)或设置(登录 url 等)的信息. 我只想拥有自己可以轻松更改的 Maven 项目。

我的 pom.xml:

这就是我目前所拥有的。有人可以提供有关我必须做什么来自定义 CAS UI 和设置的信息吗?一般可以吗?

0 投票
1 回答
1337 浏览

single-sign-on - 为跨域应用程序实施 CAS 单点注销

我是使用 CAS 的初学者。我的 CAS 服务器已启动并在端口 8443(安全 HTTP 层)上运行。我还制作了两个应用程序——JAVA 客户端(我自己的 JAVA 客户端)和 PHP 客户端(CAS 官方提供),用于测试我的 CAS 服务器。我可以为两个客户端使用单点登录。我还在 CAS 属性文件中启用了单点注销。我当前的 CAS 版本是4.0.0,我使用的是 Apache Tomcat 版本8.0.23

我为JAVA 客户端的 web.xml 中的 Sign Out 添加了以下依赖项

但是在执行单点注销时,当我注销 PHP 应用程序时,我无法注销已经打开的 JAVA 应用程序。这意味着从 PHP 应用程序注销时不会破坏我现有的 JAVA 应用程序会话。

因此,经过大量研究后,我发现了这一点,并且成功实现了注销功能。但我不想使用通用的会话数据库。

在CAS的官方文档中提到:

CAS 直接向服务发送HTTP POST消息(反向通道通信):这是向服务执行通知的传统方式。

为 SLO 配置 CAS 时,它会尝试向在 SSO 会话期间向 CAS 请求身份验证的每个应用程序发送注销消息。

但我无法理解如何获取SLO消息,因为在注销应用程序期间我没有收到任何 POST 请求(同时使用 firebug 进行跟踪)。所以任何人都可以帮我执行单点注销。

提前致谢。

0 投票
1 回答
3590 浏览

single-sign-on - 在 CAS 中单点注销

我是使用 CAS 的初学者,我在我的一个项目中使用它来使用它的单点登录服务。到目前为止,我已经实现了单点登录,我有一个 JAVA 客户端和一个 PHP 客户端。但是为了使用单点注销功能,我根据CAS 文档配置了正在运行的 CAS 。我已经完成了我工作 CAS 的 deployerConfigContext.xml 中的所有更改。我的 CAS 正在运行,但在注销时未显示任何 SAML 注销请求。我正在使用我制作的官方 PHP 客户端和 Java 客户端。我认为这可能是由于这些行我无法在我的客户端配置它。

通过 logoutType 属性在服务级别配置通知的完成方式(后向或前向通道)。该值默认设置为 LogoutType.BACK_CHANNEL。

我无法通过这一行理解实际上我必须将 Logouttype 设置为 BACK_CHANNEL,如果它是我的客户端,那么为什么它默认设置为 BACK_CHANNEL,因为任何人都可以创建客户端。

非常感谢任何帮助。提前致谢。

0 投票
1 回答
1097 浏览

logging - 如何将用户添加到 Jasig CAS ?

现在我只有测试用户帐户,如何添加其他用户帐户?

还有一点,如何将每个用户连接到某个页面?

0 投票
0 回答
100 浏览

spring - 将jsp页面添加到CAS服务器

我是使用CAS的新手,想在登录页面之后和成功登录后重定向到客户端之前向服务器添加一个自定义 jsp 页面。我搜索并认为这可以通过在 /WEB-INF/view/jsp/default/ui/Test.jsp 中添加 jsp 页面说 Test.jsp 然后更改 login-webflow.xml 来完成,但我对此知之甚少Spring 框架并未能使用这种技术实现,因为它像往常一样重定向,我想知道我缺少哪些所有步骤,或者正确的方法是什么。提前致谢。

0 投票
1 回答
533 浏览

spring - Webflow - 在视图状态中未触发转换

我尝试向 Jasig CAS 添加一些功能,所以我必须添加

lost_login-webflow.xml :

在我的 jsp 中,我设置了<input type="hidden" name="execution" value="${flowExecutionKey}" /><input type="hidden" name="_eventId" value="submit" />.

我的视图在 url /lostLogin中加载得很好,但是当我提交表单时没有任何反应......(我的表单基于 CAS 服务器的默认表单)

即使我什么都没<transition on="submit" to="lostLoginSubmit" />发生<transition on="submit" to="viewGenericLoginSuccess" />

那么为什么我从不进行过渡呢?

0 投票
1 回答
1787 浏览

java - Spring + CAS 注销后重定向到登录页面

我正在使用 Spring(3.2.8) + CAS (4.0.0),我想在注销后重定向到登录页面(而不是显示注销确认页面)。

我试图添加 cas.logout.followServiceRedirects=true我的cas.properties但没有任何反应。

在客户端,当用户想要注销时,他访问: APP_URL/j_spring_cas_security_logout

我的logout-webflow.xml看起来像:

另一方面,当用户在未经身份验证的情况下访问应用程序时,他会被重定向到: CAS_URL/login?service=APP_URL%2Fj_spring_cas_security_check

所以我可能需要在某处添加/保留:service=APP_URL

谢谢帮助。

编辑

当我尝试:

我最终:

此网页有重定向循环

ERR_TOO_MANY_REDIRECTS

但它适用于:

0 投票
1 回答
620 浏览

spring - 配置 Jasig CAS 以使用 BCrypt

我想将 Jasig CAS 配置为使用 BCrypt 作为密码编码器。

环顾四周,我发现这可以完全由 Spring Framework 处理,但我不熟悉它。

据我了解,我只需要将 spring-security-core 和 spring-security-crypto 库添加到 war 文件并在 deployerConfigContext.xml 中更改 passwordEncoder bean。

但我得到了这个结果:

tomcat 日志文件的尾部:

deployerConfigContext.xml 的一部分:

ls ~tomcat/webapps/cas/WEB-INF/lib | grep 弹簧安全

如果我错了,请纠正我,但我想我已经在 deployerConfigContext.xml 中配置了 bean。你能指出我有什么问题吗?

0 投票
3 回答
1492 浏览

spring - 贾西格 CAS。如何使用 JpaTicketRegistry 启用事务?

使用 Maven 覆盖。正如 文档所说,我只配置了 cas.properties(数据库连接部分)、ticketRegistry.xmlpom.xml。还稍微修改了类 JpaTicketRegistry以获得更多调试信息。从日志中可以看出 - getTicket 方法没有事务(postgres @Lob (oid) 需要)。软件版本:tomcat 8.0.28、psql (PostgreSQL) 9.4.4、(Jasig) CAS 4.1.0

pom.xml

catalina.out

异常堆栈:

UPD1 - 也尝试了相同的配置,但在 mysql 上 - 没有运气 - javax.persistence.TransactionRequiredException:没有可用的事务性 EntityManager

0 投票
0 回答
449 浏览

java - 无效的证书路径 - tomcat、SSL、Jasig

我尝试使用 cas-server-webapp 登录 cas-management-app,但我遇到了证书路径问题。

我生成了密钥库文件:

我更改了 Tomcat 配置:server.xml

keystoreFile的值是有效路径。

在下一步中,我将(使用浏览器)证书导出到 localhost.crt 并将其添加到 cacerts:

当我列出 cacerts 时,一切正常:

当我运行 Tomcat 服务器时,打开https://localhost:8443/cas-management我可以看到登录表单。写入用户登录名和密码后,我看到消息:

日志文件给我信息

我尝试使用 InstallCert 类安装证书,但没有任何改变。我还尝试在 Tomcat 配置中使用 truststoreFile 和 truststorePass 设置信任存储路径(jssecacerts)。

我不知道下一步我能做些什么来在我的 Tomcat 服务器上成功配置 SSL。