Apache 的mod_auth_cas模块的介绍和使用
apache的mod_auth_cas模块是一个集成到apache中的cas客户端,一般是配合Apache的反向代理来使用,对某个url的请求先经过apache,apache会判断是否经过cas认证,若未认证,则跳转到cas进行认证,若认证通过,则根据反向代理的规则,将请求转发到后台的应用中去处理,转发的时候一般会带上一个认证的头信息,后端的应用从Apache转发过来的头信息中获取到用户信息,让用户登录,整个登录操作完成。
配置:
1.引入so文件
直接运行a2enmod auth_cas命令
或者是把mod_auth_cas的源码编译之后的so文件,放到/usr/lib/apache2/modules/mod_auth_cas.so 然后,在mods-available目录新建auth_cas.load 和 auth_cas.conf
auth_cas.load内容:
LoadModule auth_cas_module /usr/lib/apache2/modules/mod_auth_cas.so
auth_cas.conf 见下节
在apache的mods-enabled 中创建auth_cas.load 和 auth_cas.conf的软链接使配置生效
ln -s auth_cas.load ../mods-available/auth_cas.load
ln -s auth_cas.conf ../mods-available/auth_cas.conf
2.修改auth_cas.conf,内容如下
LogLevel Debug
CASDebug On
CASVersion 2
CASCookiePath /var/cache/apache2/mod_auth_cas/
#CASValidateServer off
#CASAllowWildcardCert on
CASTimeout 1740
CASIdleTimeout 1740
CASLoginURL http://casserver:8080/cas/login
#CASValidateURL http://casserver:8080/cas/samlValidate
CASValidateURL http://casserver:8080/cas/serviceValidate
#CASValidateURL http://casserver:8080/cas/samlValidate
CASRootProxiedAs http://yourhost
#CASValidateSAML On
CASSSOEnabled On
#CASAttributePrefix CAS_
新建/var/cache/apache2/mod_auth_cas/ 文件,并授予权限(让apache用户可以写入cookie信息)
3.修改代理配置
<VirtualHost *:80>
<LocationMatch "(/wiki.*$)|(/issues.*$)">
Authtype CAS
CASAuthNHeader REMOTE_USER
require valid-user
</LocationMatch>
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPreserveHost On
ProxyPass /wiki http://wiki:8090/wiki
ProxyPassReverse /wiki http://wiki:8090/wiki
ProxyPass /issues http://issues:8080/issues
ProxyPassReverse /issues http://issues:8080/issues
</VirtualHost>
以上代理配置的介绍:apache拦截以 /wiki和/issues开头的url,发现没有通过CAS认证的话,会重定向到CAS认证,CAS认证通过之后,会把COOKIE的信息写入到auth_cas.conf中配置的CASCookiePath目录里,然后再代理到相应的地址,同时增加名为REMOTE_USER的header,应用里边只需要通过这个header找到相应的用户,让相应的用户登录即可
Apache 的mod_auth_cas模块的介绍和使用的更多相关文章
- Apache中 RewriteRule 规则参数介绍
Apache中 RewriteRule 规则参数介绍 摘要: Apache模块 mod_rewrite 提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求.它支持每个完整规则可以拥有不限数量 ...
- 通过apache,和nginx模块去除html中的空格和tab
最近一个项目中,合作方要求去除html中的空格,不想改代码,所以百度了一下通过apache,和nginx模块去除html中的空格和tab的方案,下面记录下来: 一.nginx nginx可以通过mod ...
- 为Apache动态增加模块
Apache已经安装完毕并投入运行,但是后来却发现部分模块没有加载,当然有两个方法: 1. 一是完全重新编译Apache, 再安装 2. 编译模块为SO文件,使用LoadModule指令加载扩展模块. ...
- ubuntu apache开启重写模块
http://www.iblue.cc/2011/09/ubuntu-apache%E5%BC%80%E5%90%AF%E9%87%8D%E5%86%99%E6%A8%A1%E5%9D%97/ Ubu ...
- Apache的rewrite规则详细介绍
Apache的rewrite规则详细介绍 发布日期:2008-09-02 16:16 来源: 作者: 点击:7044 rewrite标志 R[=code](force redirect) 强制外部重定 ...
- 给已经编译运行的Apache增加mod_proxy模块的配置方法
在Linux系统下,需要给已经编译运行的Apache增加mod_proxy模块,可以按照如下方法配置. 具体配置步骤如下: 1. 首先定位到Apache源码的 proxy目录 # cd /root/s ...
- apache动态添加模块
Apache已经安装完毕并投入运行,但是后来却发现部分模块没有加载,当然有两个方法: 1. 一是完全重新编译Apache, 再安装 2. 编译模块为SO文件,使用LoadModule指令加载扩展模块. ...
- 基于Metronic的Bootstrap开发框架--工作流模块功能介绍(2)
本篇继续<基于Metronic的Bootstrap开发框架--工作流模块功能介绍>,继续介绍基于Metronic的Bootstrap开发框架的工作模块功能,介绍工作流模块中相关业务表单的界 ...
- Winform开发框架中的内容及文档管理模块功能介绍
在开发项目的时候,我们有一些场景需要编辑一些HTML文档,作为内容发布系统的一部分,有时候也需要对一些文档如WORD文档进行编辑管理,这样需要我们对这些内容及文档进行合适的管理.本文主要介绍在WInf ...
随机推荐
- Thinkphp5笔记四:设置模板路径
默认的模板路径在模块/view文件里面.如果你觉得这样不太方便管理,想要把他设置Template目录下,可以这样做. 模板参数 ,能够影响的它参数,是当前模块下config.php template- ...
- 【DL】物体识别与定位
https://cloud.tencent.com/community/article/414833
- 远程执行命令和文件分发shell脚本
deploy.conf node01,all,other,datanode,journalnode,zookeeper, node02,all,other,datanode,journalnode,z ...
- 对SQL语句进行过滤的函数
/// <summary> /// 过滤SQL非法字符串 /// </summary> /// <param name="value">< ...
- Core Java笔记
前言 一·基础知识 二·定义,关键字和类型 三·表达式和控制流 四·数组 五·对象和类 六·高级语言特性 七·异常 八·图形用户接口 九·AWT(Abstract Window Toolkit) 事件 ...
- 7 -- Spring的基本用法 -- 12... Spring 3.0 提供的表达式语言(SpEL)
7.12 Spring 3.0 提供的表达式语言(SpEL) Spring表达式语言(简称SpEL)是一种与JSP 2 的EL功能类似的表达式语言,它可以在运行时查询和操作对象图.支持方法调用和基本字 ...
- ios开发之--数组的一些操作
1,创建数组 NSMutableArray * array =[[NSMutableArray alloc] initWithObjects:@"a",@"b" ...
- 架设SVN服务器
服务器端:windows 2003 + subversion 下载地址:http://subversion.tigris.org/servlets/ProjectDocumentList?folder ...
- 【Python】Docx解析
1.cd D:\ProgramData\Anaconda3 2.pip install python-docx 3.python代码处理 # -*- coding: utf-8 -*- import ...
- Exception occurred while processing this request, check the log for more information!安装ActiveMq-5.14.1 配置安全验证报错解决
安装ActiveMq-5.14.1 并配置了安全验证成功后,客户端也连接成功了.服务端也能通过http://IP:8161登录到控制台. 但是在点击队列,想要查看队列视图时报错,如下图: 查看日志发 ...