CAS单点登录-Cas-Management(八)

来源:互联网 发布:python字符串提取数字 编辑:程序博客网 时间:2024/05/22 08:22

CAS单点登录-Cas-Management(八)

cas-management也简称为service-management可以理解为服务管理。
cas为我们提供了对service的管理平台,通过UI界面进行操作管理

官方也提供了具体的配置文档

搭建项目

pom.xml

<?xml version="1.0" encoding="UTF-8"?><!--  ~ 版权所有.(c)2008-2017. 卡尔科技工作室  --><project xmlns="http://maven.apache.org/POM/4.0.0"         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    <parent>        <artifactId>sso</artifactId>        <groupId>com.carl.auth</groupId>        <version>1.4.0-SNAPSHOT</version>        <relativePath>../pom.xml</relativePath>    </parent>    <modelVersion>4.0.0</modelVersion>    <artifactId>sso-management</artifactId>    <packaging>war</packaging>    <build>        <plugins>            <plugin>                <groupId>com.rimerosolutions.maven.plugins</groupId>                <artifactId>wrapper-maven-plugin</artifactId>                <version>0.0.5</version>                <configuration>                    <verifyDownload>true</verifyDownload>                    <checksumAlgorithm>MD5</checksumAlgorithm>                </configuration>            </plugin>            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-war-plugin</artifactId>                <version>3.1.0</version>                <configuration>                    <warName>cas-management</warName>                    <failOnMissingWebXml>false</failOnMissingWebXml>                    <recompressZippedFiles>false</recompressZippedFiles>                    <archive>                        <compress>false</compress>                        <manifestFile>${project.build.directory}/war/work/org.apereo.cas/cas-management-webapp/META-INF/MANIFEST.MF</manifestFile>                    </archive>                    <overlays>                        <overlay>                            <groupId>org.apereo.cas</groupId>                            <artifactId>cas-management-webapp</artifactId>                            <!--原有的服务不再初始化进去-->                            <excludes>                                <exclude>**/services/*</exclude>                                <exclude>**/application.properties</exclude>                                <exclude>**/bootstrap.properties</exclude>                            </excludes>                        </overlay>                    </overlays>                </configuration>            </plugin>            <plugin>                <groupId>org.apache.maven.plugins</groupId>                <artifactId>maven-compiler-plugin</artifactId>                <version>3.3</version>            </plugin>        </plugins>        <finalName>cas-management</finalName>    </build>    <dependencies>        <!--mongodb存储客户端配置,持久化配置与客户端配置系统配置必须一致-->        <!--<dependency>            <groupId>org.apereo.cas</groupId>            <artifactId>cas-server-support-mongo-service-registry</artifactId>            <version>${cas.version}</version>        </dependency>-->        <dependency>            <groupId>org.apereo.cas</groupId>            <artifactId>cas-management-webapp</artifactId>            <version>${cas.version}</version>            <type>war</type>            <scope>runtime</scope>        </dependency>    </dependencies></project>

核心的内容是对war包的依赖,上面的pom是依赖项目中的结构,也对官网的例子进行细微的调整。

bootstrap.yml

当然还需要对启动的相关配置进行调整

## 版权所有.(c)2008-2017. 卡尔科技工作室#spring:  application:    name: cas-management  cloud:    config:      enable: true      watch:        enabled: true      fail-fast: true  profiles:    active: devlogging:  file: logs/cas-management.loginfo:  name: 接入管理系统health:  config:    enable: true# spring cloud config---spring:  profiles: dev  cloud:    config:      uri: http://localhost:8888/config---

cas-management-dev.properties

另外这个文件是放在与配置中心

## 版权所有.(c)2008-2017. 卡尔科技工作室#### CAS Thymeleaf Views#spring.thymeleaf.cache=falsespring.thymeleaf.mode=HTML### Embedded CAS Tomcat Container#server.context-path=/cas-managementserver.port=8081## CAS 动态认证管理开始#cas.server.name=https://passport.sso.com:8443cas.server.prefix=${cas.server.name}cas.mgmt.serverName=http://passport.sso.com:8081# 静态管理认证开始#通过sso登录后的用户,必须存在该文件下,否则无法登录,当然这些用户可以通过ldap进行动态管理cas.mgmt.userPropertiesFile=classpath:/user-details.propertiescas.mgmt.defaultLocale=zh_CN# 静态管理认证结束### CAS Web Application Config#server.session.timeout=1800server.session.cookie.http-only=trueserver.session.tracking-modes=COOKIE### CAS Cloud Bus Configuration# Please leave spring.cloud.bus.enabled set to false#spring.cloud.bus.enabled=false### Actuator Endpoint Security Defaults#endpoints.enabled=trueendpoints.actuator.enabled=true# mongo db配置(客户端持久化)#cas.serviceRegistry.mongo.idleTimeout=30000#cas.serviceRegistry.mongo.port=27017#cas.serviceRegistry.mongo.dropCollection=false#cas.serviceRegistry.mongo.socketKeepAlive=false#cas.serviceRegistry.mongo.password=123456#cas.serviceRegistry.mongo.collectionName=cas-service-registry#cas.serviceRegistry.mongo.databaseName=cas-mongo-database#cas.serviceRegistry.mongo.timeout=5000#cas.serviceRegistry.mongo.userId=cas-config#cas.serviceRegistry.mongo.writeConcern=NORMAL#cas.serviceRegistry.mongo.host=127.0.0.1#cas.serviceRegistry.mongo.conns.lifetime=60000#cas.serviceRegistry.mongo.conns.perHost=10# mongo db配置(客户端持久化)management.security.enabled=false#tomcat配置server.max-http-header-size=2097152server.use-forward-headers=trueserver.connection-timeout=20000server.error.include-stacktrace=ALWAYSserver.tomcat.max-http-post-size=2097152server.tomcat.basedir=build/tomcatserver.tomcat.accesslog.enabled=trueserver.tomcat.accesslog.pattern=%t %a "%r" %s (%D ms)server.tomcat.accesslog.suffix=.logserver.tomcat.max-threads=10server.tomcat.port-header=X-Forwarded-Portserver.tomcat.protocol-header=X-Forwarded-Protoserver.tomcat.protocol-header-https-value=httpsserver.tomcat.remote-ip-header=X-FORWARDED-FORserver.tomcat.uri-encoding=UTF-8spring.http.encoding.charset=UTF-8spring.http.encoding.enabled=truespring.http.encoding.force=true

测试

启动步骤:
1. sso-config
2. sso-server
3. sso-management

启动成功后试着访问http://localhost:8081/cas-management

若不成功,你应该看到访问的是https://passport.sso.com:8443/cas/login/xxx,需要看导入https设置hosts文件

若成功,看到的是登录页,提前恭喜你~
这里写图片描述

输入admin/123登录成功,再次恭喜你~

这里写图片描述

当然了,由于没有对数据持久化,那肯定是没看到列表了,下面马上讲持久化~

持久化配置

持久化配置是为了将service配置加入数据库,动态识别,减轻去修改文件,通过系统进行管理

新增依赖

sso-server/pom.xml以及sso-management/pom.xml
加入依赖(打开注释)

<dependency>    <groupId>org.apereo.cas</groupId>    <artifactId>cas-server-support-mongo-service-registry</artifactId>    <version>${cas.version}</version></dependency>

当然需要设置数据库信息,cas-management-dev.propertiessso-dev.properties

cas.serviceRegistry.mongo.idleTimeout=30000#数据库端口cas.serviceRegistry.mongo.port=27017cas.serviceRegistry.mongo.dropCollection=falsecas.serviceRegistry.mongo.socketKeepAlive=false#密码cas.serviceRegistry.mongo.password=123456#存储service集合cas.serviceRegistry.mongo.collectionName=cas-service-registry#数据库名字cas.serviceRegistry.mongo.databaseName=cas-mongo-databasecas.serviceRegistry.mongo.timeout=5000#用户名cas.serviceRegistry.mongo.userId=cas-configcas.serviceRegistry.mongo.writeConcern=NORMAL#数据库ipcas.serviceRegistry.mongo.host=127.0.0.1cas.serviceRegistry.mongo.conns.lifetime=60000cas.serviceRegistry.mongo.conns.perHost=10

注意:
mongodb的用户必须在所在的用户下添加认证

可以考虑以下配置

mongodb用户配置

要求mongodb版本3.4以上

#启动>mongod.exe#登录>mongo#切换数据库>use admin#新增管理员>db.createUser({user: "admin",pwd: "123456",roles:[{role:"userAdminAnyDatabase", db: "admin" } ]})#切换数据库>use cas-mongo-database# 新增用户>db.createUser({user: "cas-config",pwd: "123456",roles: [ { role: "readWrite", db: "cas-mongo-database" }]})#重启并开启认证>mongod.exe --auth

下载代码尝试:GitHub 其他版本可以到GitHub或者码云查看

发现一些意外的事情可以考虑翻翻前面的博客进行学习哦

作者联系方式

如果技术的交流或者疑问可以联系或者提出issue。

邮箱:huang.wenbin@foxmail.com

QQ: 756884434 (请注明:SSO-CSDN)

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 在沙漠中旅游如果车子坏了该怎么办 小磨床平面磨出来很粗怎么办 玩cs鼠标单点总是连点怎么办 论文出现计算上的错误该怎么办 不戴头盔违法扣分怎么办不了缴费 去法国会说英语不会说法语怎么办 企业有很多费用没有正式发票怎么办 我二张一万元的作废发票掉了怎么办 小规模上月开错税率的票怎么办 一般纳税人开票税率开错了怎么办 电信电子发票代表号码错了怎么办 发票备注栏项目名称写了两遍怎么办 苏州出入境手撕发票弄丢了怎么办 电脑下载过播放器还是不播放怎么办 局域网内的电脑无法互相访问怎么办 浏览器拖动滑动线页面会跳动怎么办 在暴风影音上视频播放不出来怎么办 格式工厂转换格式占内存太大怎么办 手机登陆不上路由器管理界面怎么办 新路由器设置密码后不能上网怎么办 更换网络后无线路由器不能用怎么办 手机登录不了路由器登录业面怎么办 海康威视通道用户被锁定怎么办 无线适配器或访问点有问题怎么办 客户买鞋子说价格贵该怎么办 小米5s刷成真砖后怎么办 手机电源键坏了开不了机怎么办 手机开关键坏了开不了机怎么办 vivo手机解屏密码忘了怎么办 小米max关机后开关键坏了怎么办 联想手机刷机失败无限重启怎么办 红米2a显示白屏怎么办 小米6手机一直处于开机状态怎么办 怎么在手机上看wifi密码怎么办 怎么查自己的宽带密码忘记了怎么办 怎么查自己宽带账号密码忘了怎么办 电脑重置路由器密码连不上网怎么办 e盘和f盘没有了怎么办 复制文件过程中自己卡住了怎么办 电脑卡住了怎么办 鼠标也点不动 善领wifi连上网不能用怎么办