在一台Windows7系统的机器上进行OpenAM的配置。该机器上已经安装了JDK、Apache2.2、Tomcat。
1.首先配置机器的host文件,配置如下(C:\Windows\System32\drivers\etc\host):
127.0.0.1 localhost openam.example.com www.example.com
2.将openam_10.0.1.zip解压缩,将其中的openam_10.0.1\opensso\deployable-war\opensso.war放入tomcat的webapp目录下。
3.运行tomcat,可以看到它会自动deploy opensso
4.tomcat启动成功后,访问http://localhost:8080/opensso,它会显示OpenAM界面,选择新建配置
里面有一系列的东西,按自己的想法填好。最主要是要记住amAdmin和它的密码。
5.配置完成后,用amAdmin和它的密码重新登录。这个时候就进入配置界面。
6.首先配置策略,访问控制->顶级领域->策略,给它配置一个规则(URL 策略代理)
名称:rule1
资源名称:http://www.example.com:80/
GET 允许 勾选上
然后,给它配置一个主体(验证的用户),给个名字:All Authenticated Users
7.然后配置代理,名字和密码自定
SERVER URL:http://openam.example.com:8080/opensso
AGENT URL:
http://www.example.com:80
代理:
1.勾选上Only SSO
2.在代理的SSO页签中,将跨域SSO启用勾选上
8.然后安装Apache的Policy Agent
首先解压缩:Apache-v2.2-WINNT-32-Agent-3.3.3.zip
然后:cd /d drivername:\Apache-v2.2-WINNT-32-Agent-3.3.3\web_agents\apache22_agent\bin
agentadmin --install
然后,它也会提示填一系列东西,保持与配置的代理一致即可。
9.这时,再运行:http://www.example.com:80
它会自动跳转到http://openam.example.com:8080/opensso
/UI/login登陆页面,等你登陆完成了,才能够正常访问
站点。http://www.example.com:80
时间仓促,此文仅作记录。具体截图描述,周末放出。
需要注意:host中不要配这一句,::1 localhost。OpenAM10.1版本仿佛绕不过去这里,会出现403 forbidden的错误。切记。
配这个配了2天,无数次失败,有如下方法可以挽救失败:
1.重启tomcat和apache
2.如果跨域的话,勾选跨域SSO
3.如果有的URL成功,有的报403,那么勾选:仅SSO
4.反复检查host文件
5.在OpenAM上配置Agent时,以及在Apache上安装Agent时,千万不要写错ServerURL和AgentURL,否则会在登录成功后,显示:#403x