技术分享 CAS单点登录 服务端配置 查看内容

cas入门之二十八:services管理控制台

老高 | 发布于 2017-05-05 14:38| 浏览()| 评论() | 收藏() | 点赞() | 打印

摘要: 想想一种情况,当你搭建好了一台cas服务器,大家知道了cas的访问地址,那么你能否有能力控制住哪些应用才能够经过你搭建的cas服务器 进行认证吗?

什么是cas services管理控制台?

想想一种情况,当你搭建好了一台cas服务器,大家知道了cas的访问地址,那么你能否有能力控制住哪些应用才能够经过你搭建的cas服务器

进行认证吗?你可能会说,大家不会乱连,进行认证的。再想想一种情况,如果经过后台监控,发现有一个应用链接经过你的cas应用进行认证,

一下就让你的cas服务器cpu 100%,那么你如何去控制这个链接呢?

现在我很高兴的告诉你,cas自身就有能力处理这种情况,就是通过cas services 管理控制台。也就是说cas 有能力管理哪些service

能够进行认证,哪些不能经过认证。默认情况下,cas对于http,https,imap,imap协议的所有service都能通过cas进行认证。

其实我也是才刚刚弄明白,cas的这个功能,因为在通常应用cas中,我们根本无须关心这个功能,它的默认配置就可以应用了。

下面我们以http形式发布cas,然后修改配置,进行services管理控制台。

1.以http形式发布cas

具体参看:cas 入门之三:cas 之http 部署(CAS取消https方法配置)

当然了,你也可以以https的形式发布cas,参见:cas入门之十九:https形式发布cas证书制作

但是下面是以http形式来进行配置,注意区分配置参数。

假设cas访问地址: http://localhost:8070/cas

2.打开cas/WEB-INF/cas.properties

修改server.name=http://localhost:8080  为server.name=http://localhost:8070


3.打开cas/WEB-INF/deployerConfigContext.xml

<sec:user-service id="userDetailsService">
    <sec:user name="@@THIS SHOULD BE REPLACED@@" password="notused" authorities="ROLE_ADMIN" />
</sec:user-service>

改为:

<sec:user-service id="userDetailsService">
    <sec:user name="test" password="test" authorities="ROLE_ADMIN" />
</sec:user-service>

这个是spring security,如果你不理解spring security,没有关系,可以用一句来概况这个bean的功能,就是向用户名为test,密码为test的用户授予ADMIN角色,但是spring security 它的角色名必须以ROLE_起始。

4.打开cas/WEB-INF/classes/messages_zh_CN.properties

增加如下内容:

management.services.status.evaluationOrder.notupdated=notupdated
management.services.manage.label.anonymous=anonymous
management.services.manage.label.usernameAttribute=usernameAttribute
management.services.manage.label.evaluationOrder=evaluationOrder

 5.重新部属cas,然后访问http://localhost:8070/cas/services

输入用户名/密码 test/test,就能够进入cas services控制台了。

恭喜你成功了。

发表评论(对文章涉及的知识点还有疑问,可以在这里留言,老高看到后会及时回复的。)

表情