Tag: cas

CAS单点登出不起作用

我在Apache Tomcat上安装了CAS服务器(v3.5.2),在JBOSS上安装了2个客户端。 除非单点退出,否则一切正常。 我想我所做的一切都很好,但仍然存在这个问题。 我的配置服务器端:在WEB-INF \ deployerConfigContext.xml中: 客户端配置:在web.xml中: CAS Single Sign Out Filter org.jasig.cas.client.session.SingleSignOutFilter artifactParameterName SAMLart CAS Single Sign Out Filter /* REQUEST FORWARD org.jasig.cas.client.session.SingleSignOutHttpSessionListener CAS Authentication Filter org.jasig.cas.client.authentication.AuthenticationFilter casServerLoginUrl http://localhost:8888/cas-server-webapp-3.5.2/login service http://localhost:8080/firstCasClient CAS Validation Filter org.jasig.cas.client.validation.Saml11TicketValidationFilter casServerUrlPrefix http://localhost:8888/cas-server-webapp-3.5.2 service http://localhost:8080/firstCasClient CAS HttpServletRequest Wrapper Filter org.jasig.cas.client.util.HttpServletRequestWrapperFilter CAS Assertion Thread Local Filter org.jasig.cas.client.util.AssertionThreadLocalFilter CAS Authentication Filter […]

与CAS合并Pentaho BA 7社区版

最近我正在努力将Pentaho BA(BI服务器)7 CE与Cas服务器集成。 我跟进Pentaho官方文档。 https://help.pentaho.com/Documentation/5.1/0P0/150/010/060/000但不幸的是它不起作用!! 实际上,在文档中找到第5节很难。 我必须在我的配置中设置casAuthenticationProvider.MemoryUserDetailsS​​ervice ? 而我从引擎中获得的是错误,表示无法找到CasAuthenticationProvider类。 我添加了所有必要的JAR。 错误是: Cannot find class for publish type: INTERFACES specified on publish of bean id: casAuthenticationProvider

CAS 4 – 成功validation后无法检索LDAP组

我已经配置了CAS 4 / Spring Security / Active Directory并且能够成功进行身份validation。 但我很难检索角色,后来将其用于授权。 我在CAS中进行身份validation后可以使用角色,但我想将其传递给服务(Web应用程序),以便可以用它来检查授权(例如.hasRole(’ROLE_EDITOR’)) 我想我在下面的bean中做了一些配置错误,我进一步调查了。 我已经展示了这些配置片段。 bean’casAuthenticationProvider’和属性’authenticationUserDetailsS​​ervice’ bean’ldapAuthenticationHandler’ – ‘principalAttributeMap’属性 bean’attributeRepository’ 服务器日志 2014-09-25 16:59:45,516 DEBUG [org.jasig.cas.authentication.LdapAuthenticationHandler] – 2014-09-25 16:59:45,516 DEBUG [org.jasig.cas.authentication.LdapAuthenticationHandler] – 2014-09-25 16:59:45,519 INFO [org.jasig.cas.authentication.PolicyBasedAuthenticationManager] – 2014-09-25 16:59:45,519 DEBUG [org.jasig.cas.authentication.principal.PersonDirectoryPrincipalResolver] – 2014-09-25 16:59:45,521 DEBUG [org.jasig.cas.authentication.principal.PersonDirectoryPrincipalResolver] – 2014-09-25 16:59:45,522 DEBUG [org.jasig.cas.persondir.LdapPersonAttributeDao] – 2014-09-25 16:59:45,522 DEBUG [org.jasig.cas.persondir.LdapPersonAttributeDao] – 2014-09-25 16:59:45,522 […]

单一登录以保护REST API和基于Web的内部系统

我需要一些关于如何使用单一身份validation系统保护REST API和基于Web的内部系统的建议。 我正在研究使用的可能性: oAuth 2.0 JA-SIG CAS 自定义实现(实现两个独立的API) 保护REST API并将调用重定向到特定的API实例 validationWeb应用程序用户。

CA PEM文件到jks tomcat truststore

我获得了由某个CA签署的p12公钥/私钥。 我有一个本地tomcat服务器,我正在进行开发工作。 我是安全新手,但我相信需要将CA公共证书放入我的tomcats信任库。 (我试图让x509证书与CAS合作) 如何让我的tomcat(和JVM)信任这个CA? 有没有办法从p12和我的tomcat信任库中获取CA公共证书? (我还从firefox导出了证书以获取CA的PEM文件) 我看到很多关于jsk的post,但不是相反。 我只需要CA. (我认为) :)

CAS注销和cookie消除

我刚刚创建了一个HelloWorld servlet并在其上实现了CAS。 我能够毫无问题地登录,CAS在我的浏览器中设置了3个cookie,CASGT和2个JSESSIONID 1用于/ cas,另一个用于/ helloWorld 问题是,然后我访问https:// blah:8443 / cas / logout ,我看到已注销的成功屏幕,但cookie仍然在我的浏览器中,所以我没有被淘汰,我可以再次进入/ helloWorld没有显示登录屏幕。 你知道我应该怎么做CAS删除它在我注销时创建的cookie吗? 提前致谢

CAS 4.2获取LDAP属性

我使用以下配置成功获取LDAP属性值,我可以在日志文件中看到这些值。 现在我该如何将这些属性发送给客户端? 这是我的deployerConfigContext.xml中的默认attributeRepository: memberOf faculty staff org 有没有办法用principalAttributeMap填充attributeRepository? 当我从deployerConfigContext.xml中删除attributeRepository时抛出exception。 根据此文档https://apereo.github.io/cas/4.2.x/installation/LDAP-Authentication.html,LdapAuthenticationHandler能够独立解析和检索主要属性,而无需额外的主体解析器机制。 如果是这样,我们如何将这些属性返回给客户?

SSO,未知

我开始为我们生产的3个不同的webapps开发SSO解决方案,并且仍然为同一个客户端维护。 事实上,所有3个人通过第四个单独的应用程序将他们的用户和登录信息存储在同一个地方,该应用程序只提供基本的restful api服务。 这基本上意味着当一个人试图登录时,我们实际上会调用其他服务来询问这个用户名和密码是否正确。 在某种程度上,这第四个宁静的东西已经完成了至少一半我们需要的工作。 我们现在需要的是一种方法,让用户登录webapp A,然后按照链接(或简单地键入其URL)到webapp B(或简单地键入其URL)并到达那里已经记录 (或反之亦然)。 我一直在阅读很多有关CAS和openID甚至是oauth的内容,但我无法真正决定它。 这种模式是集中的吗? 分散的? 我的一万英尺的视图表明,我会以某种方式只需要将这个“缺失的function”添加到我们的restful api服务器中。 但是怎么样? ps:这3个完全分开。 部署在不同的机器上(其中2台在glassfish上运行,另一台在tomcat上运行)。 也是不同的领域。 pps:它们都是弹簧驱动的webapps(因此它们使用spring-security ) ppps:截至今天,还有其他webapps使用我们的restul api(非spring,非java)。 这个解决方案可能必须准备好处理这些。

调用Restful Webservice时,Uri不是绝对exception

以下代码段用于使用restful API调用我的Web服务。 ClientConfig config = new DefaultClientConfig(); Client client = Client.create(config); String uri= “https://127.0.0.1:8443/cas-server-webapp-3.5.0/login”; WebResource resource = client.resource(URLEncoder.encode(uri)); MultivaluedMap queryParams = new MultivaluedMapImpl(); queryParams.add(“username”, “suresh”); queryParams.add(“password”, “suresh”); resource.queryParams(queryParams); ClientResponse response = resource.type( “application/x-www-form-urlencoded”).get(ClientResponse.class); String en = response.getEntity(String.class); System.out.println(en); 并在运行上述代码时获得此exception com.sun.jersey.api.client.ClientHandlerException: java.lang.IllegalArgumentException: URI is not absolute at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:151) at com.sun.jersey.api.client.Client.handle(Client.java:648) at com.sun.jersey.api.client.WebResource.handle(WebResource.java:680) 我搜索了许多文章,并没有得到我做错的地方。 旁注:我在Apache tomacat7的机器上部署了cas-server-webapp-3.5.0 war

如何在Spring的CAS服务属性中正确设置服务URL

使用Spring Security + CAS时,我一直使用发送到CAS的回调URL(即服务属性)来阻止小路障。 我已经看了很多这样的例子,但它们都使用硬编码的URL(甚至是Spring的CAS文档 )。 一个典型的剪辑看起来像这样…… 首先,我不想硬编码服务器名称或端口,因为我希望这个WAR可以在任何地方部署,我不希望我的应用程序在编译时绑定到特定的DNS条目。 其次,我不明白为什么Spring无法自动检测我的应用程序的上下文和请求的URL以自动构建URL。 该声明的第一部分仍然有效,但As Raghuram通过此链接指出,出于安全原因,我们无法信任来自客户端的HTTP Host Header。 理想情况下,我希望服务URL完全符合用户的要求(只要请求有效,例如mycompany.com的子域),所以它是无缝的,或者至少我只想指定一些相对于我的路径应用程序上下文root并让Spring动态确定服务URL。 像下面这样的东西…… 要么… 这是否可能或容易,或者我错过了明显的?