一直想把公司运营的项目的各个子项的认证及授权统一到Cas上,从有想法到现在快一年的时间了。现在才正式着手,有兴趣的朋友一起交流学习一下。具体项目的细节不便透露,整合的大体思路为:1、开发部署Cas服务器端功能,2、开发Cas客户端基本功能框架、3、将Cas客户端框架打jar提供子项目使用,4、Docker正式环境部署Cas服务器,该系列博客中仅涉及1、2部分内容。

新手上路

一、Github上下载Cas服务器项目

下载地址:https://github.com/apereo/cas-overlay-template,通过Branch下拉到5.3下载,本人使用5.3 进行开发部署。解压后用IDEA打开,如下图目录结构:

说明:本地需要安装配置Maven,需要等待相关资源库的下载

如果出现类型上图飘红的情况,直接删除。

二、编译并运行

通过Maven进行打包(也可在命令行进行打包操作),可以看到多出target目录,打包出的资源都在此处。

在IDEA的Terminal窗口中执行build run(cmd命令行相同),经过漫长的等待会看到如下信息:

并在后面跟着一串异常信息,然后运行进程终结........

通过观察异常信息可以看出,Cas使用SSL启动并监听8443端口,但是却找不到《thekeystore》文件。thekeystore是SSL密钥文件,因此要为Cas服务器建立一个属于自己的密钥文件。如何建立证书网上有很多教程,但本人使用 KeyStore Explorer 可视化工具进行密钥创建,要下载该工具可访问:https://download.csdn.net/download/popo_popo/10750816。

三、创建密钥,再次编译并运行

然后点 “OK”

保持原域名不变

密码:changeit

经过以上操作,已经建立了一个密钥。密钥要存储在什么地方,才能被Cas服务器引用到?

在IDEA的项目目录中创建src/main/resources目录,并把resources作为资源目录,如下图:

之后把上面创建的SSL证书保持到resources目录并命名为thekeystore

之后从target>cas>WEB-INF>classes下复制application.properties到src>main>resources目录下

并修改复制过来的配置文件中的server.ssl.key-store项值为classpath:thekeystore

以上操作完成后,再次执行build run,当你看到READY的时候,天空靓了,心情爽了

Cas 服务器 下载、编译及部署的更多相关文章

  1. Cas 服务器 Service(Cas客户端)注册信息维护

    作为Cas服务器,允许哪些客户端接入与否是通过配置来定义的.对Cas服务器来说,每一个接入的客户端与一个Service配置对应:在Cas服务器启动时加载并注册上这些Service,与之对应的客户端才能 ...

  2. Cas 服务器 使用HTTP协议对外服务

    在上篇博文<Cas 服务器 下载.编译及部署>Cas启动后默认支持HTTPS连接,如果要使用使用HTTP连接访问,则会收到以下信息: 注:本文是将Cas服务器运行在Http协议模式下,非设 ...

  3. 单点登录CAS使用记(二):部署CAS服务器以及客户端

    CAS-Server下载地址:https://www.apereo.org/projects/cas/download-cas CAS-Client下载地址:http://developer.jasi ...

  4. 从零开始部署CAS服务器

    从0开始部署CAS服务器的操作过程文档,我已经整理完毕,一共分为8步,这8步都是我自己操作实践过的. Setp1:Ubuntu server安装 在virtual box中安装ubuntu serve ...

  5. 安装CAS服务器

    1.简介 参考: http://www.coin163.com/java/cas/cas.html CAS主要用于多系统单点登录,属于WEB SSO.SSO体系主要角色有三种:User(多个),WEB ...

  6. Spark入门实战系列--2.Spark编译与部署(上)--基础环境搭建

    [注] 1.该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取: 2.Spark编译与部署将以CentOS 64位操作系统为基础,主要是考虑到实际应用 ...

  7. Cas服务器设置(java),java、php客户端配置

    由于多个项目需要帐号的互通,所以一开始就是用cas去做的,不得不说cas要配置的东西挺多的,但是项目安全性不需要太高,所以没有做https的请求,也就是没有弄证书,这虽然省了很多时间和精力,但是项目之 ...

  8. Spark编译与部署

    Spark入门实战系列--2.Spark编译与部署(上)--基础环境搭建   [注] 1.该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取: 2.S ...

  9. 搭建CAS服务器,并实现一个简单的单点登录的demo

    官网:http://jasig.github.io/cas/Cas Server下载:http://developer.jasig.org/cas/Cas Client下载:http://develo ...

随机推荐

  1. 关于return的分号自动插入问题

    在<JavaScript语言精粹>这本书里,这个“自动插入分号”机制被划入到了JavaScript的毒瘤里面,与之并列的前面的全局变量. 有些时候,不合时宜地插入分号,会导致严重的后果. ...

  2. R语言命令汇总

    > qqplot(spear,fastrankweight)> qqplot(spear,fastrankweight,main="title")> qqplot ...

  3. SpringCloud2.0入门3-新的eureka依赖

    前言 Springboot2.0推出有一段时间了,是要学习1.5+还是从2.0开始?犹豫的原因是资料不全,目前现有的资料大部分是1.0的.但作为学习者,肯定要学习最新的.不如,先试试. 搭建Eurek ...

  4. React Native 入门基础知识总结

    中秋在家闲得无事,想着做点啥,后来想想,为啥不学学 react native.在学习 React Native 时, 需要对前端(HTML,CSS,JavaScript)知识有所了解.对于JS,可以看 ...

  5. python面向对象入门(1):从代码复用开始

    本文从代码复用的角度一步一步演示如何从python普通代码进化到面向对象,并通过代码去解释一些面向对象的理论.所以,本文前面的内容都是非面向对象的语法实现方式,只有在最结尾才给出了面向对象的简单语法介 ...

  6. 实战!基于lamp安装wordpress详解-技术流ken

    简介 LAMP 是Linux Apache MySQL PHP的简写,其实就是把Apache, MySQL以及PHP安装在Linux系统上,组成一个环境来运行动态的脚本文件.现在基于lamp搭建wor ...

  7. ElasticSearch集群环境搭建

    一 .单机部署 1.下载安装包.解压 2.在window下运行bin/elasticsearch.bat 3.访问localhost:9200 页面显示结果 { "name" : ...

  8. 【转载】Window服务器开机后一直处于蓝色屏幕(非蓝屏 crash)状态

    阿里云Windows系统服务器运维的过程中,有时候会遇到实例开机后一直处于蓝色背景屏幕(非蓝屏 crash )状态.此时你发现鼠标可以任意正常移动,但是屏幕上却没有任何的图标可以供操作,这种情况可能是 ...

  9. 自建Socket转发,使用远程桌面(mstsc)连接家中电脑

    网络结构图如下: 开题先放图,一切全靠编哈哈. 进入正题! 如图所示,我们需要一个公网服务器,利用公网服务器将内网的数据进行转发,从而实现两个内网服务器的通讯.没错,这不是p2p,原本想做成p2p,因 ...

  10. 第四讲 smart qq 获取联系人信息 ,分组 好友 群聊

    首先从post一下  http://s.web2.qq.com/api/get_user_friends2 这个链接获取分组categories ,好友信息 friends,info. string ...