Download presentation
Presentation is loading. Please wait.
1
PDS - Aleph 500 interoperability
Yoel Kortick, Aleph 500 2nd line support Team leader
2
Copyright Statement All of the information and material inclusive of text, images, logos, product names is either the property of, or used with permission by Ex Libris Ltd. The information may not be distributed, modified, displayed, reproduced – in whole or in part – without the prior written permission of Ex Libris Ltd. TRADEMARKS Ex Libris, the Ex Libris logo, Aleph, SFX, SFXIT, MetaLib, DigiTool, Verde, Primo, Voyager, MetaSearch, MetaIndex and other Ex Libris products and services referenced herein are trademarks of Ex Libris, and may be registered in certain jurisdictions. All other product names, company names, marks and logos referenced may be trademarks of their respective owners. DISCLAIMER The information contained in this document is compiled from various sources and provided on an "AS IS" basis for general information purposes only without any representations, conditions or warranties whether express or implied, including any implied warranties of satisfactory quality, completeness, accuracy or fitness for a particular purpose. Ex Libris, its subsidiaries and related corporations ("Ex Libris Group") disclaim any and all liability for all use of this information, including losses, damages, claims or expenses any person may incur as a result of the use of this information, even if advised of the possibility of such loss or damage. © Ex Libris Ltd., 2008
3
A special thanks A special thanks to the staff of the following institutions who allowed us to use real live examples from their libraries in this presentation. Canterbury Christ Church, UK University of East Anglia, UK College of Management, Israel Weizmann Institute, Israel
4
Table of Contents Introduction and Overview. Slides 5-9
Initial setup. Slides 10-13 PDS Directory Tree. Slides 14-16 tab_service.<institute> file. Slides 17-29 The institute. slide 30 PDS Login page. Slides 31-36 Multiple PDS Login pages and the institute parameter. Slides 37-53 Remote login page. Slides 54-56 Local Authentication. Slides 59-65
5
Introduction In addition to the information presented here you are strongly advised to also see the document “Patron Directory Services v 1.3” on the Doc Portal under the “Cross Product” section. This presentation will focus specifically on using PDS in Aleph 500. This is not a replacement for “Patron Directory Services v 1.3” document, but may be considered an introduction to it for Aleph users.
6
Overview The Patron Directory Service (PDS) is a “back-end” Web component that facilitates user authentication and login to a calling application. The PDS does not have a user database of its own. Rather, it can be configured to work against the institution’s local authentication server and user database, such as an LDAP directory service.
7
Overview In addition to facilitating user authentication and login to the calling application, the PDS provides shared user authentication and Single Sign On (SSO) capabilities among the Ex Libris suite of products (Primo, DigiTool, MetaLib, and ALEPH). The PDS can check if a user trying to access a given product has already been authenticated for access to another Ex Libris product and – if she has – the PDS will log the user in without requesting a username and password.
8
Overview If, for example, a library has Aleph and PRIMO, then both products could use PDS to authenticate using Aleph X server or LDAP (Lightweight Directory Access Protocol, see also In this case once a user already logged into one system, he will not be requested to also log in to another system (Single Sign On).
9
Overview SSO (Single Sign On) is an application for Ex Libris products. In a situation of several Ex Libris applications one of the servers (products) should be elected the PDS instance for achieving SSO. Note that Aleph works a bit different from other Ex Libris applications in that it requires the user's to be registered in the ALEPH database to allow for authentication. This means that the login used by the user to login to the system must be registered in the Z308 tables and it's ID must be defined in the $alephe_tab/tab100 PDS-KEY-TYPE's definitions (more on that in a moment).
10
Initial setup - $alephe_tab/tab100
The following two variables need to be defined in $alephe_tab/tab100: wislib22.weizmann.ac.il-a18(1) >>cd $alephe_tab wislib22.weizmann.ac.il-a18(1) >>grep ^PDS tab100 PDS-AWARE=Y PDS-KEY-TYPE=00,02 Notes: Even if only z308 patron key type 02 is being used, 00 should also be listed in the PDS-KEY-TYPE variable The PDS-KEY-TYPE listed here should also be defined in $usr_library $data_tab/tab_bor_id.lng
11
Initial setup - aleph_start
The following two variables need to be defined in aleph_start: wislib22.weizmann.ac.il-a18(1) >>grep -i pds aleph_start setenv PDS_HOST wislib22.weizmann.ac.il setenv PDS_PORT Both the PDS_HOST and PDS_PORT should point to the “shared PDS instance”. Usually in Aleph the PDS_HOST and PDS_PORT are same as the WWW_HOST and HTTPD_PORT, for example: wislib22.weizmann.ac.il-18(1) WIS50-ALEPH>>egrep 'WWW_HOST|PDS_HOST' aleph_start setenv WWW_HOST wislib22.weizmann.ac.il setenv PDS_HOST wislib22.weizmann.ac.il wislib22.weizmann.ac.il-18(1) WIS50-ALEPH>>egrep 'HTTPD_PORT|PDS_PORT' aleph_start setenv HTTPD_PORT setenv PDS_PORT
12
Initial setup – www_server.conf
The following two variables need to be defined in www_server.conf They use the variables previously defined in aleph_start: wislib22.weizmann.ac.il-a18(1) >>grep -i pds www_server.conf setenv server_pds " setenv pds_backlink "
13
Initial setup – www_server.conf
The pds_backlink (on the previous slide) is the URL to which the PDS will “send” the user after entering his username and password and clicking “login” In Aleph the pds_backlink is most often the same as the apache URL
14
The PDS Directory Tree The PDS configuration is done in the PDS Directory tree The PDS Directory Tree may be arrived at via the alias pdsroot This will bring the user to $aleph_dev/pds lib2.colman.ac.il-a18(1) >>pdsroot lib2.colman.ac.il-a18(1) >>pwd /exlibris/aleph/a18_1/pds lib2.colman.ac.il-a18(1) >>alias pdsroot cd $aleph_dev/pds lib2.colman.ac.il-a18(1) >>
15
The PDS Directory Tree The following directories exist under the PDS Directory Tree lib2.colman.ac.il-a18(1) >>ls -1rt conf_table/ program/ html_form/ service_proc/ pds_files/ install_component/
16
The PDS Directory Tree conf_table – The PDS main configuration tab_service.institute files. Most of the PDS’s configurations are performed in this directory. These include LDAP configurations, customized attribute mapping files etc. program – The PDS program files and modules. html_form – All of the HTML files used by the PDS and customized versions of the different PDS screens service_proc – Internal PDS Perl routines used by PDS for communication with different information sources. pds_files – Stores all active session cookies.
17
The “Institute” A key PDS concept is the “institution”.
It is common but not necessary in Multi ADM setups for each ADM library to have it’s own institution. In single ADM setups there is usually one institution If there are multiple configurations, then when the user signs-in to PDS the user must select the institution from a drop-down menu which displays on the PDS sign-in page.
18
The tab_service.<institute> file
The primary PDS configuration file is called tab_service.<institute>. It is located in the conf_tab directory The following examples show actual tab_service.<institute> files from real libraries. The first two (College of Management and Weizmann Institute) call an ldap perl file, while the last one (University of East Anglia) does not.
19
The tab_service.<institute> file
lib2.colman.ac.il-a18(1) >>pdsroot lib2.colman.ac.il-a18(1) >>cat conf_table/tab_service.aleph !!!!!!!!!!!!!!!!!!!!-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!-!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ALEPH Institute tab_service [AUTHENTICATE] program = ldap.pl params = ldap_col.conf [END] [BOR_INFO] program = ldap.pl params = ldap_col.conf [INSTITUTE_DISPLAY] code = ALEPH institute = CMA00 lang = ENG desc = ALEPH Institute Here authentication is done via ldap The file ldap.pl is in the service_proc directory The file ldap_col.conf is in the conf_table directory
20
The tab_service.<institute> file
wislib22.weizmann.ac.il-a18(1) >>pdsroot wislib22.weizmann.ac.il-a18(1) >>cat conf_table/tab_service.aleph !!!!!!!!!!!!!!!!!!!!-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!-!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ALEPH Institute tab_service [AUTHENTICATE] program = ldap.pl params = ldap_weizmann.conf [END] [BOR_INFO] program = ldap.pl params = ldap_weizmann.conf [INSTITUTE_DISPLAY] code = WEIZMANN lang = ENG desc = Weizmann Institute aleph = WIS50 Here authentication is done via ldap The file ldap.pl is in the service_proc directory The file ldap_weizmann.conf is in the conf_table directory
21
The tab_service.<institute> file
ueadbs8.uea.ac.uk-a18(1) >>pdsroot ueadbs8.uea.ac.uk-a18(1) >>cat conf_table/tab_service.suf50 !!!!!!!!!!!!!!!!!!!!-!!!!!!!!!!!!!!!!!!!!!!!!!!!!!-!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! ALEPH Institute tab_service [AUTHENTICATE] program = aleph.pl params = ueadbs8.uea.ac.uk,80,BOR-AUTHENTICATE,SUF50,N,WWW-X,WWW-X [END] [BOR_INFO] program = aleph_18.pl [INSTITUTE_DISPLAY] code = SUF50 lang = ENG desc = UCS / Suffolk New College Here authentication is not done via ldap The files aleph.pl and aleph_18.pl are in the service_proc directory
22
The tab_service.<institute> file
The tab_service.<institute> table defines the services required from the PDS for that institution. Each table is composed of sections and every section always contains the following four lines to which others can be added: [Service Name] program = params = [END] The following slides provide an explanation of each line.
23
The tab_service.<institute> file
[Service Name] The Service names which are most in use by Aleph are: AUTHENTICATE BOR_INFO For a full list of all service names see the next slide and also chapter two of Patron Directory Services v 1.
24
The tab_service.<institute> file
Service names AUTHENTICATE – performs user authentication. BOR_INFO – gets user attributes (name, affiliation, etc.). REDIRECT_LOGOUT – redirects to a different page after logout. LOAD_LOGIN – redirects user to remote login page. REMOTE_LOGIN – handles remote login response. LOAD_SSO – redirects user to remote SSO System. REMOTE_SSO – handles the remote SSO callback. BOR_VERIFICATION - gets user password (used for EZPROXY‑SSO). REMOTE_LOGOUT – redirects the browser to a SSO logout URL and then back to the regular PDS LOGOUT. (CAS and SHIB)
25
The tab_service.<institute> file
Program = this is the program used. It specifies the appropriate PDS program to use for the task at hand. The programs reside in the ./pds/service_proc directory. Below we see that at the Weizmann Institute ldap.pl is used, and it is located in pds/service_proc directory wislib22.weizmann.ac.il-a18(1) >>cd $aleph_dev/pds/ wislib22.weizmann.ac.il-a18(1) >>grep ^program conf_table/tab_service.weizmann program = ldap.pl wislib22.weizmann.ac.il-a18(1) >>ls -lrt service_proc/ldap.pl -rwxr-xr-x 1 aleph exlibris Feb service_proc/ldap.pl* wislib22.weizmann.ac.il-a18(1) >>
26
The tab_service.<institute> file
Here is another “program” example. We see that at the University of East Anglia aleph.pl and aleph_18.pl are used, and they are located in pds/service_proc directory ueadbs8.uea.ac.uk-a18(1) >>cd $aleph_dev/pds ueadbs8.uea.ac.uk-a18(1) >>grep ^program conf_table/tab_service.suf50 program = aleph.pl program = aleph_18.pl ueadbs8.uea.ac.uk-a18(1) >>ls -lrt service_proc/aleph.pl -rw-rw-r aleph exlibris Jan service_proc/aleph.pl ueadbs8.uea.ac.uk-a18(1) >>ls -lrt service_proc/aleph_18.pl -rwxrwxr-x 1 aleph exlibris Aug service_proc/aleph_18.pl* ueadbs8.uea.ac.uk-a18(1) >>
27
The tab_service.<institute> file
The authentication process begins when the login request is submitted. Several authentication programs can be configured and the PDS will attempt to authenticate the user with the first listed authentication program. If the authentication fails, it will try the next authentication program. If authentication fails in all of the services defined the user will be redirected back to the login page. For more regarding this see section “User Authentication” in Patron Directory Services v 1.3
28
The tab_service.<institute> file
Params This contains the parameters for the program or the name of a configuration file that is used to store parameters.
29
The tab_service.<institute> file
[AUTHENTICATE] program = aleph.pl params = ueadbs8.uea.ac.uk,80,BOR-AUTHENTICATE,SUF50,N,WWW-X,WWW-X [END] [BOR_INFO] program = aleph_18.pl [AUTHENTICATE] program = ldap.pl params = ldap_weizmann.conf [END] [BOR_INFO] program = ldap.pl params = ldap_weizmann.conf
30
The tab_service.<institute> file
[END] Added to each section to confirm the end of the service section. As will become clear, the setup for a given institution requires the configuration of several PDS services (AUTHENTICATE and then BOR_INFO to retrieve user information, for example). This means there are multiple sections in the tab_service table for a single institution.
31
The PDS login page Let’s see what happens when the user clicks “My Library Card” from within the web OPAC (from page head-1-nobor-ill-02-pds) to arrive at the PDS login page. This is from the College of Management with $alephe_tab/tab100 has PDS-AWARE=Y Here is the relevant section from head-1-nobor-ill-02-pds: <a href="&server_f?func=bor-info" title="Your Library Card"> Library Card</a>
32
The PDS login page The URL to the login page may (or may not) contain a specific “Institute”. Here the institute is CMB We will discuss how to determine the value of the institute later
33
The PDS login page If the URL to the login page has an Institute then the specific institute will be default chosen from the pull down box in the login page Each institute in the URL should conform to the Institute which appears in the corresponding tab_service.<institute> file
34
The PDS login page The default PDS login page for Aleph is: $aleph_dev/pds/html_form/calling_system-aleph/login libcat-dev-nhr-01.canterbury.ac.uk-a19(2) >>pdsroot libcat-dev-nhr-01.canterbury.ac.uk-a19(2) >>cd html_form/ libcat-dev-nhr-01.canterbury.ac.uk-a19(2) >>cd calling_system-aleph/ libcat-dev-nhr-01.canterbury.ac.uk-a19(2) >>ls -lrt login -rw-r--r-- 1 aleph exlibris 2816 Jan 14 14:18 login
35
The PDS login page The login page for the Weizmann Institute
36
The PDS login page The values which are sent from Aleph to the PDS login page (before the user actually enters his username and password) come from $alephe_root/www_f_eng/pds-login $alephe_root/www_f_eng/pds-login <html> <head> <title>PDS login</title> <script> <!— var debug =0 ; function LoginPds() { var url = '&server_pds?func=load-login&calling_system=aleph&institute=$0200&url=&pds_backlink?$0100'; if (debug == 1) alert (url); window.location = url; } // --> </script> </head> <body onload = "LoginPds()"> </body> </html> Here the institute value is $0200. It will therefore come from tab100 DEFAULT-BOR-LIBRARY in bibliographic library. More on that later.
37
PDS login pages and the institute
Note that it is possible to make the pds-login page “base sensitive” by attaching a suffix in accordance with tab_base.lng and hard coding the institute in each pds-login page. This way separate login pages can be used for each base: ueadbs8.uea.ac.uk-a18(1) >>grep institute pds-login-???01 pds-login-nsa01: var url = '&server_pds?func=load-login&calling_system=aleph&institute=NSA50&url=&pds_backlink?$0100'; pds-login-otl01: var url = '&server_pds?func=load-login&calling_system=aleph&institute=OTL50&url=&pds_backlink?$0100'; pds-login-suf01: var url = '&server_pds?func=load-login&calling_system=aleph&institute=SUF50&url=&pds_backlink?$0100'; pds-login-uea01: var url = '&server_pds?func=load-login&calling_system=aleph&institute=UEA50&url=&pds_backlink?$0100'; Here at UEA the institute value is hard coded instead of $0200. It will therefore not come from tab100 DEFAULT-BOR-LIBRARY in bibliographic library.
38
PDS login pages and the institute
As already stated, the default PDS login page comes from: $aleph_dev/pds/html_form/calling_system-aleph/login If a library wants separate login pages for each institute then they can make a separate directory for each institute, and copy to each directory the contents of “calling-system-aleph”: ueadbs8.uea.ac.uk-a18(1) >>cd $aleph_dev/pds/html_form/ ueadbs8.uea.ac.uk-a18(1) >>ls -lrt institute-?????/login -rw-rw-r aleph exlibris Jan 16 15:30 institute-nsa50/login -rw-rw-r aleph exlibris Jan 16 15:31 institute-otl50/login -rw-rw-r aleph exlibris Jan 16 15:33 institute-suf50/login -rw-rw-r aleph exlibris Feb 20 15:53 institute-uea50/login ueadbs8.uea.ac.uk-a18(1) >> Here at UEA we see four different login pages for four different institutes.
39
PDS login pages and the institute
The situation at UEA can help us understand the workings of the PDS, because this library has several bases each using separate institutions and PDS login files Looking at their situation can give us an understanding of the whole system We will investigate three different head-1-nobor-* files, each used for different bases.
40
PDS login pages and the institute
Here are three different head-1-nobor-ill-02 files head-1-nobor-ill-02-pds-nnh head-1-nobor-ill-02-pds-suf01 head-1-nobor-ill-02-pds-nsa01 Here are the corresponding three different pds-login files pds-login-nnh pds-login-suf01 pds-login-nsa01
41
PDS login pages and the institute
Each of the head-1-nobor-* files has the same information for the log in. The next slide, for example, shows that the actual link to the BOR-INFO function in the web OPAC is the same for different files being used by different bases. The actual URL which goes to PDS, however, will be different because of different pds-login pages per base.
42
PDS login pages and the institute
ueadbs8.uea.ac.uk-a18(1) >>grep "BOR-INFO" head-1-nobor-ill-02-pds-nnh <a href="&server_f?func=BOR-INFO" title="View information on your library account" class="blue">My Account</a></td> ueadbs8.uea.ac.uk-a18(1) >>grep "BOR-INFO" head-1-nobor-ill-02-pds-suf01 <a href="&server_f?func=BOR-INFO" title="View information on your library account" class="blue">My Account</a> ueadbs8.uea.ac.uk-a18(1) >>grep "BOR-INFO" head-1-nobor-ill-02-pds-nsa01 <a href="&server_f?func=BOR-INFO" title="View information on your library account" class="blue">Login to Your Account</a>
43
PDS login pages and the institute
Each of the suffixes of head-1-nobor* and pds-login-* pages correspond to specific bases in tab_base.lng: ueadbs8.uea.ac.uk-a18(1) >>egrep -i '^NNH|^SUF01|^NSA01' $alephe_tab/tab_base.eng NNH NNH UEA UEA01 Y wsl=NN SUF SUF01 USM SUF01 alldocuments not wst=suppressed NSA the College Library NSA01 USM NSA01
44
PDS login pages and the institute
Each pds-login file for each base goes to a different institute: ueadbs8.uea.ac.uk-a18(1) >>cd $alephe_root/www_f_eng ueadbs8.uea.ac.uk-a18(1) >>grep institute= pds-login-* | egrep 'nnh|suf01|nsa01' pds-login-nnh: var url = '&server_pds?func=load-login&calling_system=aleph&institute=NNH&url=&pds_backlink?$0100'; pds-login-nsa01: var url = '&server_pds?func=load-login&calling_system=aleph&institute=NSA50&url=&pds_backlink?$0100'; pds-login-suf01: var url = '&server_pds?func=load-login&calling_system=aleph&institute=SUF50&url=&pds_backlink?$0100'; ueadbs8.uea.ac.uk-a18(1) >>
45
PDS login pages and the institute
If therefore user is in base nsa01 And clicks the login link institute=NSA50 He will go to this URL And use login page $aleph_dev/pds/html_form/institute-nsa50/login
46
PDS login pages and the institute
The reason the login from base nsa01 used institute NSA50 is because base nsa01 uses files with suffix nsa01 and file pds-login-nsa01 has this: ueadbs8.uea.ac.uk-a18(1) >>cat pds-login-nsa01 <html> <head> <title>PDS login</title> <script> <!-- var debug =0 ; function LoginPds() { var url = '&server_pds?func=load-login&calling_system=aleph&institute=NSA50&url=&pds_backlink?$0100'; if (debug == 1) alert (url); window.location = url; } // --> </script> </head> <body onload = "LoginPds()"> <!-- here we have NSA50 instead of $ > </body> </html> ueadbs8.uea.ac.uk-a18(1) >>
47
PDS login pages and the institute
By default (“out of the box setup”) the institute is not hard coded in the www_f_eng/pds-login page. By default it appears as follows with $0200 variable. Here we have Canterbury Christ Church using pds-login with $0200 libcat-dev-nhr-01.canterbury.ac.uk-a19(2) >>wf libcat-dev-nhr-01.canterbury.ac.uk-a19(2) >>grep institute pds-login var url = '&server_pds?func=load-login&calling_system=aleph&institute=$0200&url=&pds_backlink?$0100'; libcat-dev-nhr-01.canterbury.ac.uk-a19(2) >>
48
PDS login pages and the institute
In the specific previous case where the pds-login page had institute=$0200 and the user clicks the login link in the web OPAC, he arrives to this link: We might ask “why is the institute here CCC50, when in pds-login it was $0200”?
49
PDS login pages and the institute
The answer is: If the institute is not hard coded in the pds=login page (but rather with the $0200 variable) then it comes from the tab100 DEFAULT-BOR-LIBRARY in bibliographic library On the previous slide it was CCC50 because of this: libcat-dev-nhr-01.canterbury.ac.uk-19(2) CCC01-ALEPH>>dt libcat-dev-nhr-01.canterbury.ac.uk-19(2) CCC01-ALEPH>>grep ^DEFAULT-BOR-LIBRARY tab100 DEFAULT-BOR-LIBRARY=CCC50 libcat-dev-nhr-01.canterbury.ac.uk-19(2) CCC01-ALEPH>>
50
PDS login pages and the institute
At UEA this link: Goes to this page
51
PDS login pages and the institute
The login page may be customized for each institute. This is done (as briefly previously mentioned) by copying the contents of “$aleph_dev/pds/html_form/calling_system-aleph” to “$aleph_dev/pds/html_form/<institute-institute name>” This was done at UEA and therefore when institute NSA50 is used the login page comes from: “$aleph_dev/pds/html_form/institute-nsa50
52
PDS login pages and the institute
When the institute is ccc50 the following file will be used: $aleph_dev/pds/conf_table/tab_service.ccc50 When the institute is nsa50 the following file will be used: $aleph_dev/pds/conf_table/tab_service.nsa50
53
PDS login pages and the institute
In the case of UEA there are several pds login files, each for specific institutions ueadbs8.uea.ac.uk-a18(1) >>cd $aleph_dev/pds/html_form/ ueadbs8.uea.ac.uk-a18(1) >>ls -lrt institute-*/login -rw-rw-r aleph exlibris Jan 16 15:30 institute-nsa50/login -rw-rw-r aleph exlibris Jan 16 15:31 institute-otl50/login -rw-rw-r aleph exlibris Jan 16 15:33 institute-suf50/login -rw-rw-r aleph exlibris Feb 20 15:53 institute-uea50/login -rw-rw-r aleph exlibris Feb 23 08:24 institute-nnh/login -rw-rw-r aleph exlibris Mar 13 14:01 institute-ill/login ueadbs8.uea.ac.uk-a18(1) >>
54
The remote login page At Canterbury Christ Church the default local login page is not used. If the user clicks here from … <td width="9%" valign="middle" height="20" width="11%" align="center" nowrap> <a href="&server_f?func=BOR-INFO" title="View information on your library account" class="blue">User Info</a> </td>
55
The remote login page He will arrive here at User went from libcat-dev-nhr-01.canterbury.ac.uk to libportal.canterbury.ac.uk
56
The remote login page Let’s see how the remote login was used libcat-dev-nhr-01.canterbury.ac.uk-19(2) CCC01-ALEPH>>cat $aleph_dev/pds/conf_table/tab_service.ccc50 [AUTHENTICATE] program = aleph.pl params = libcat-dev-nhr-01.canterbury.ac.uk,8992,BOR_AUTHENTICATE,CCC50,N,WWW-X,WWW-X [END] [BOR_INFO] program = aleph.pl params = libcat-dev-nhr-01.canterbury.ac.uk,8992,BOR_INFO,CCC50,N,WWW-X,WWW-X [END] [LOAD_LOGIN] program = remote_load_login.pl params = cccuni-remote-login [END] [REMOTE_LOGIN] program = remote_login_gen_1.pl params = [END] [INSTITUTE_DISPLAY] code = CCC50 lang = ENG desc = ALEPH Institute aleph = CCC50 metalib = CCCUNI [END] tab_service.ccc50 uses remote_load_login.pl with file cccuni-remote-login
57
The remote login page The file cciuni_remote_login is in the params line of the LOAD_LOGIN section of tab_service.ccc50. cciuni_remote_login is the Web page (HTML file) which is used for the login instead of the local file $aleph_dev/pds/html_form/calling_system-aleph/login This remote html web page should be placed either in the ./pds/html_form global or in the appropriate ./pds/html-form/calling_system-xxx directory. The var urlgo is the URL of the login page on the remote server
58
The remote login page Here is the actual file:
libcat-dev-nhr-01.canterbury.ac.uk-19(2) CCC01-ALEPH>>cat html_form/global/cccuni-remote-login <!-- login redirect --> <html> <head> <title>CCCUNI Remote Login</title> <include>meta-tags <script language=JavaScript> function redirect() { var urlgo = " "func=remote-login&" "calling_system=$0200&" "institute=CCC50&" "pds_handle=CCCUNI&" "url=$0400"; top.location = urlgo; } </script> </head> <body onload="javascript:redirect()"> </html> This is the actual remote login page
59
Local Authentication PDS can authenticate the user against the calling application’s own user database. It uses a Perl interface to activate the calling application’s X-Server and validate the user name and password entered on the login screen. The parameters configured specify: Connection information for contacting the calling application X-server The N parameter instructs the Perl interface not to use a secure connection Two parameters, service_user and service_password, are the username and password used by PDS to obtain permission to use X-Server services.
60
Local Authentication Let’s take a look at the UEA tab_service.suf50 file to see how this works: ueadbs8.uea.ac.uk-a18(1) >>pdsroot ; cd conf_table ; grep -v ^! tab_service.suf50 [AUTHENTICATE] program = aleph.pl params = ueadbs8.uea.ac.uk,80,BOR-AUTHENTICATE,SUF50,N,WWW-X,WWW-X [END] [BOR_INFO] program = aleph_18.pl [INSTITUTE_DISPLAY] code = SUF50 lang = ENG desc = UCS / Suffolk New College If the X server works for the user then PDS should work. If the X server does not work then for sure PDS will not work
61
Local Authentication At UEA tab_service.suf50 file is used when the institute is SUF50 The institute is SUF50 when the file www_f_eng/pds-login-suf01 is used: ueadbs8.uea.ac.uk-a18(1) >>grep institute $alephe_root/www_f_eng/pds-login-suf01 var url = '&server_pds?func=load-login&calling_system=aleph&institute=SUF50&url=&pds_backlink?$0100';
62
Local Authentication In order for this to work (line from tab_service)
params = ueadbs8.uea.ac.uk,80,BOR-AUTHENTICATE,SUF50,N,WWW-X,WWW-X For patron ID 248 verification 365, this URL should retrieve the patron information Both the line from tab_service and the X server URL use bor-authenticate
63
Local Authentication bor-authenticate
Here is an example of the X server from another library (we use a demo library here so we do not show actual patron data) bor-authenticate
64
Local Authentication If we would have gotten a message like this then there is no way PDS would work:
65
Local Authentication There is also an option to check the authentication via the pds_check program located in $aleph_proc ueadbs8.uea.ac.uk-a18(1) >>ap ueadbs8.uea.ac.uk-a18(1) >>pds_check PDS Check Utility - Main Menu ============================= 0. Exit 1. Edit pds_tab_users 2. Check PDSDefinitions file validity 3. Check tab_service tables validity 4. View PDS Check log files Select [0]: For more information see chapter 9 of “Patron Directory Services v 1.3” document.
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.