基于 pds 的统一认证实现
DESCRIPTION
基于 PDS 的统一认证实现. 北京师范大学图书馆 郭建峰. 内容提纲. PDS 介绍 PDS 系统设置 Aleph 500 认证 MetaLib 认证 Primo 认证 Calis 联合认证. PDS 介绍. PDS 介绍. PDS: Patron directory Service( 用户目录服务) 是 Exlibris 公司的一个共享 (shared) 、独立 ( independed ) 、后端( back-end) 的 Web 应用。 能够实现用户认证与登录到 Exlibris 的相关产品。 Aleph ( 图书馆自动化集成管理系统 ) - PowerPoint PPT PresentationTRANSCRIPT
基于 PDS的统一认证实现北京师范大学图书馆 郭建峰
内容提纲1. PDS 介绍2. PDS 系统设置3. Aleph 500 认证4. MetaLib 认证5. Primo 认证6. Calis 联合认证
PDS 介绍
PDS 介绍• PDS: Patron directory Service( 用户目录服务)• 是 Exlibris 公司的一个共享 (shared) 、独立
(independed) 、后端( back-end) 的 Web 应用。• 能够实现用户认证与登录到 Exlibris 的相关产品。
– Aleph ( 图书馆自动化集成管理系统 )– Metalib( 学术资源门户系统)– Primo (资源发现与获取系统)– DigiTool (数字资产管理系统)– Rosetta (数字资产保存系统)等
– AlephAleph
– 中
PDS 功能• PDS 功能
– 读者认证和登录服务– 获得用户信息– 实现 Exlibris 产品单点登录或退出
PDS 登入流程• 用户通过 SSO 方式,登录 Exlibris 产品 ;• 检查用户是否已登录其他 Exlibris 产品,若已登录,返回用户已登录信息(第 1 步,第 2 步)。• 若未登录,弹出登录窗口,用户输入信息,发送到 PDS 系统认证。• PDS 将用户信息发送到其他认证系统(如 as
CAS, iChain, or Shibboleth )等或 Exlibris 本地系统(如 Aleph500 中)认证。• 认证成功后, PDS 从认证系统取得用户信息,并影射、规范化成 XML 格式的信息返给系统。
–
PDS 退出流程• 用户己通过 SSO 方式,登录到 Exlibris 产品 ;• 用户若退出登录,首先通过应用系统向 PDS 发送退出命令 ;• PDS 退出能将该用户从各个系统中退出,并使相关系统返回未登录界面。
PDS 实例• 下面以北京师范大学图书馆为 PDS 实例说明统一认证的配置方法及实现过程。• 北京师范图书馆统一认证系统 :
– Aleph 500 V20– Metalib V4.2– Primo V4.4– Calis 联合认证
• PDS 系统原安装 Metalib 系统上,现迁移到 Aleph 500 系统上
PDS 安装和配置
PDS 安装• 将 Metalib 的 PDS 目录打 tar, 传到 Aleph 500系统上,解包。修改目录属主 aleph:exlibris.• 建立 perl-5.8.9 链接
– perldoc.589 -> /exlibris/product/perl-5.8.9/bin/perldoc*
– perl.589 -> /exlibris/product/perl-5.8.9/bin/perl*• 修改 check_url.pl
由#!/exlibris/aleph/a20_1/product/bin/perl 修改为
#!/exlibris/aleph/a20_1/product/bin/perl.589
PDSDefinitions• 修改 ./program/ PDSDefinitions 相关参数改为 opac URL 地址或域名our ($server_httpd) = "http://opac.lib.bnu.edu.cn:8080";our ($server_httpsd) = "https://opac.lib.bnu.edu.cn:443";our ($server_pds) =
"http://opac.lib.bnu.edu.cn:8080/pds";
tab_service.bnu• 修改 ./conf_table/ tab_service.bnu• 用户认证[AUTHENTICATE]program = aleph.plparams = opac.lib.bnu.edu.cn,8080,BOR_AUTH,BNU51,N,WWW-X,WWW-Xprogram = metalib_x_server.plparams = search.lib.bnu.edu.cn,8332,BOR-AUTH
• 用户信息 [BOR_INFO]program = aleph.plparams = opac.lib.bnu.edu.cn,8080,BOR_INFO,BNU51,N,WWW-X,WWW-Xprogram = metalib_x_server.plparams = search.lib.bnu.edu.cn,8332,BOR-INFO
tab_service.bnu• 机构显示信息
[INSTITUTE_DISPLAY]code = BNUdesc = 北京师范大学lang = ENGprimo=BNUmetalib = BNUaleph = BNU51
单点登录文件• 修改 ./conf_table/ general_conf , sso_conf [ LOGON]
TYPE1 = metalib,aleph,primo[END][LOGOUT]TYPE1 = metalib,aleph,primo[END][DEFAULT_INSTITUTE]METALIB = BNUALEPH = BNU51PRIMO = BNU[END]
单点登录文件 [LOGOFF_ID] params = WWW-X,WWW-X [END]
定制登录界面• 各馆可根据自己情况定制登录界面• 登录界面存在 pds/html_form/ 下
– global/login 非 exlibris 产品登录界面– calling_system-metalib/login metalib 登录界面– calling_system-aleph/login aleph500 登录界面
• 建立相关符号链接– PDSMetalib.css – icon– PDSAleph.css– PDSMExlibris.css
ALEPH 500 认证
登录模式• Aleph 500 OPAC 系统分登录两种模式
– 传统网页登录模式– PDS 登录模式
• Tab100– 修改 /exlibris/aleph/u20_1/alephe/tab/tab100
oPDS-AWARE=YoPDS-KEY-TYPE=00
• aleph_start– /exlibris/aleph/u20_1/alephe/tab/aleph_start
o setenv PDS_HOST opac o setenv PDS_PORT 8080
Aleph500 PDS 配置• www_server.conf
– /exlibris/aleph/u20_1/alephe/tab/www_server.conf– 设置 server_pds
setenv server_pds http://opac.bnu.edu.cn:8080/pds– 设置 pds_backlink
setenv pdsbacklink http://opac.lib.bnu.edu.cn:8080/&session
Aleph500 页面修改• 目录: /exlibris/aleph/u20_1/alephe/www_f_chi• 文件 head-1-nobo
由…… <a href="&server_f?func=file&file_name=login-session“
class="white" title=" 输入用户名和密码 "> 登录 </a> 改为<script> var url_for_pds=location.search; document.write('<a href="&server_pds?func=load-
login&calling_system=aleph&url=&pds_backlink'+url_for_pds+'" class="white" title=" 输入用户名和密码 "> 登录 </a>');
</script>
Aleph500 页面修改• 文件 full-set-tail由 请 <a href=&server_f?func=login-session-review
style='text-decoration:underline;color:blue'> 登录 </a> 后改为 请 <a href=&server_pds?func=load-login&calling_system=aleph&url=&pds_backlink"+url_for_pds+" style='text-decoration:underline;color:blue'> 登录</a> ;
Aleph500 页面修改• 文件 head-replace 和 head-1-bor由<a href="&server_f?func=file&file_name=logout" class="white" title=" 退出系统 "> 退出 </a> | 改为 <a href="&server_f?func=file&file_name=pds-logout" class="white"
title=" 退出系统 "> 退出 </a> |
METALIB 认证
Metalib 认证配置• 修改 metalib_start setenv PDS_HOST opac.lib.bnu.edu.cn setenv PDS_HOST_IN opac.lib.bnu.edu.cn setenv PDS_PORT 8080 setenv PDS_PORT_IN 8080• 修改 www_server.confsetenv server_pds "http://${PDS_HOST}:${PDS_PORT}/pds" setenv server_pds_in “http://${PDS_HOST_IN}:${PDS_PORT_IN}/pds"
PRIMO 认证配置
Primo 认证配置• Primo 认证配置
– 进入 Primo 后台管理– 一般配置( General Configuration)
oPDS_URLoPDS_INTERNAL_URLoPDS_Configuration_URL oPDS_SSO_ENALBE
CALIS 联合认证
CALIS 联合认证• CALIS 联合认证由认证提供者 IDP 和和服务证提供者 SP 组成。• 优势:
– 图书馆自身不需要向 CALIS 提供读者数据,便于维护– 能够实现不同系统的单点登录
• 该程序得到由武汉大学图书馆提供,并做了一些修改
– 中
CALIS 联合认证文件
bor_auth.asp 本地读者认证接口bor_info.asp 本地读者信息接口bor_info_inc.asp : 包含文件userinfo_pds2idp.xsl PDS 信息格式转换成 CALIS 格式
实施方法安装 IIS 和 XML Parser建立 CALIS_IDP, 拷贝以上文件CALIS 统一认证系统中读者认证 url : http://your_server/calis_idp/bor_auth.asp 读者信息 url: http://your_server/calis_idp/bor_info.asp
– 中
userinfo_pds2idp.xsl
• PDS 用户信息格式转换成 CALIS 统一认证格式• 用户类型类型转换
– 1. 本科生 2 研究生 3 博士生 4 教师• 日期格式转换
– yyyy-mm-dd
谢谢大家