Spring中的aware接口详情
473
2022-11-04
让 CAS 5.1.8 支持http,解决未认证授权服务错误提示问题
好不容易将CAS 5.1.8编译完毕,生成war包,并修改配置,支持数据库(oracle)方式认证,部署到tomcat,准备用了,孰料一打开客户端应用程序,跳到CAS,没有账号密码输入框,只有一句刺目的错误提示:
方便各位后来者在搜索引擎上查找答案,附录相关文字:
未认证授权的服务CAS的服务记录是空的,没有定义服务。 希望通过CAS进行认证的应用程序必须在服务记录中明确定义。Application Not Authorized to Use CASYou are not authorized to access the application as your account \is missing privileges required by the CAS server to authenticate into this service. Please notify your support desk.The application you attempted to authenticate to is not authorized to use CAS. Contact your CAS administrator to learn how you might register and integrate your application with CAS.The services registry of CAS is empty and has no service definitions. \Applications that wish to authenticate with CAS must explicitly be defined in the services registry.
我刚开始看到这个提示,以为要将应用程序的地址在CAS上注册,这样CAS才会给你认证、提供服务。后来搜索了好久,没看到有人提起。基本都是说其实涉及到4.*开始,CAS 就默认只支持\WEB-INF\classes\services\HTTPSandIMAPS-10000001.json
"serviceId" : "^(改为==> "serviceId" : "^(#这一点真是太重要了!!!!!!!!
基本上,都没有人会提到最后一条:cas.serviceRegistry.initFromJson=true,所以无论我怎么改HTTPSandIMAPS-10000001.json,都不起作用,永远都是出现红色的错误提示。后来在一个老外的回答里看到有这么一句,我心里知道,应该就是这个问题了。为什么这些答案会隐藏得这么深!
另外,我看到有人提到要修改 c:\tomcat\etc\cas\config\cas.properties ,这是什么鬼?其实,就是有些人将上面第二个步骤的配置写在了这里而已。将配置统一写在application.properties不好吗,要分开多处。况且这个etc目录,是CAS运行的时候自动生成的,里面放了日志。它没有位于tomcat里,而是在tomcat所在的盘的根目录下。估计路径是可以改的,但统一写在application.properties比较好吧,CAS能读到的,一点问题没有。
至于这个提示
是去不掉的,除非支持https,或者干脆手动改这个页面。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~