Access Keys:
Skip to content (Access Key - 0)
My Area (Access Key - 2)


Toggle Sidebar
Your Rating: Results: PatheticBadOKGoodOutstanding! 0 rates

Labels

pds pds Delete
advanced advanced Delete
opensso opensso Delete
sso sso Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

PDS OpenSSO Integration

Tags: , , ,
Last Updated: Nov 12, 2009 16:56


  • Description

    NYU is working to integrate PDS with Sun's OpenSSO Identity Management application. This is being done in a consortium environment in which not all users are in OpenSSO and not all OpenSSO users are in Aleph. PDS is hosted in an active/passive capacity on our Primo front-end servers.


  • Author: Scot Dalton
  • Additional author(s):
  • Institution: New York University
  • Year: 2009
  • License: BSD style
  • Short description: Use, modification and distribution of the code are permitted provided the copyright notice, list of conditions and disclaimer appear in all related material.
  • Link to terms: [Detailed license terms]
  • Skill required for using this code:
    advanced

State

In Development

Programming language

Perl, CSS, HTML

Software requirements

OpenSSO

Screen captures


NYU Look and Feel

Generic Look and Feel

Author(s) homepage

http://library.nyu.edu

Download

Coming soon.

Working example

https://pdsdev.library.nyu.edu:443/pds?func=load-login&institute=NYU

Using the following Ex Libris open interfaces

PDS and Aleph X-Services

Changes

Version 1.0

Initial Release

Release notes

Initial Release

Installation instructions

  1. Add the Class::Accessor perl module via cpan: /exlibris/product/perl-5.8.8/bin/perl -MCPAN -e 'install Class::Accessor'
  2. Add the Net::OpenSSO perl module to /exlibris/product/perl-5.8.8/lib/site_perl/5.8.8/Net
  3. Add the NYU::Libraries::XServices perl modules to /exlibris/product/perl-5.8.8/lib/site_perl/5.8.8/NYU/Libraries/XServices
  4. Update customized files
  5. In directory /exlibris/primo/p1_1/primoe/apache/htdocs, symbolically link /exlibris/primo/p1_1/pds/html_form/local/ to serve out local css files.
  6. sudo /exlibris/primo/p1_1/primoe/apache/bin/apachectl restart

Customized Files

ExLibris PDS Files

Core PDS Files

No core PDS files have been updated!

ExLibris HTML Files
  • html_form/calling_system-aleph/remote-and-local-list: this file handles scenarios where Aleph is the calling system and no institute is passed in. Customized for Open SSO.
  • html_form/global/remote-and-local-list: this file handles scenarios where either the calling system is not separated out by PDS (Primo) or a calling system was not specified in the request and no institute is passed in. Customized for Open SSO.
ExLibris Config Files
  • /exlibris/primo/p1_1/primoe/apache/conf/httpd.conf: ScriptAlias "/info" "/exlibris/primo/p1_1/pds/program/info.pl" added for custom rendering of NYU CMS driven help text
  • conf_table/gen_conf: customized to set DEFAULT_INSTITUTE of NYU for Metalib, Primo and Aleph in order to enable Single Sign On.
  • conf_table/heading-error.eng: customized to handle SSO error text in accordance to the PDS standard.

NYU Local PDS Files

HTML Files
  • html_form/institute-bob/login: handles the scenario when the institute passed in the query string is BOB. Generic look and feel and customized for OpenSSO
  • html_form/institute-cu/login: handles the scenario when the institute passed in the query string is CU. Customized for Cooper Union look and feel and OpenSSO
  • html_form/institute-ns/login: handles the scenario when the institute passed in the query string is NS. Customized for New School look and feel and OpenSSO
  • html_form/institute-nysid/login: handles the scenario when the institute passed in the query string is NYSID. Customized for NYSID look and feel and OpenSSO
  • html_form/institute-nyu/login: handles the scenario when the institute passed in the query string is NYU. Customized for NYU look and feel and OpenSSO
CSS Files
  • html_form/local: local directory was created to handle local css. Symbolic link to directory was create in /exlibris/primo/p1_1/primoe/apache/htdocs for serving out the local css files.
  • html_form/local/bob.css: customized css file for generic login screen
  • html_form/local/common.css: common css file for login screens
  • html_form/local/cu.css: customized css file for Cooper Union login screen
  • html_form/local/ns.css: customized css file for New School login screen
  • html_form/local/nysid.css: customized css file for NYSID login screen
  • html_form/local/nyu.css: customized css file for NYU login screen
Perl Scripts
  • program/info.pl: custom cgi script to render NYU CMS driven help text
  • service_proc/remote_load_login_opensso.pl: customized to check OpenSSO and display the appropriate login screen if necessary
  • service_proc/opensso_sso.pl: customized to check OpenSSO and redirect to the remote-sso pds function
  • service_proc/opensso_sso_gen_1.pl: customized to handle pds remote-sso function
Config Files
  • conf_table/tab_service.bob: specifies services associated with the generic BobCat institution.
  • conf_table/tab_service.cu: specifies services associated with the CU PDS institution.
  • conf_table/tab_service.ns: specifies services associated with the NS PDS institution.
  • conf_table/tab_service.nysid: specifies services associated with the NYSID PDS institution.
  • conf_table/tab_service.nyu: specifies services associated with the NYU PDS institution.
  • conf_table/BOB.tags: Mapping of Aleph borrower statuses to Primo institutions for the generic BobCat PDS institution.
  • conf_table/CU.tags: Mapping of Aleph borrower statuses to Primo institutions for the CU PDS institution.
  • conf_table/NS.tags: Mapping of Aleph borrower statuses to Primo institutions for the NS PDS institution.
  • conf_table/NYSID.tags: Mapping of Aleph borrower statuses to Primo institutions for the NYSID PDS institution.
  • conf_table/NYU.tags: Mapping of Aleph borrower statuses to Primo institutions for the NYU PDS institution.

NYU Local Aleph Files

HTML Files
  • alephe/www_f_eng/pds-login-nyu01: added to handle URL encoding.

TO DO list

Nightly load of Aleph users into MySQL and/or a text file to improve performance.

Known issues

  1. Primo logout after session timeout
  2. Basket deep link displays without login

Comments

Cookies

3 cookies play a part in session management

  • bobcat (primo): JSESSIONID (if exists, doesn't immediately call pds LOAD_SSO)
  • opensso: iPlanetDirectoryPro (for now, pds checks this cookie name dynamically)
  • pds: PDS_HANDLE (created by pds after login [guest in some cases])

Relevant Logs

  • /exlibris/primo/p1_1/log/pds_server.log - log for PDS perl modules and perl scripts
  • /exlibris/primo/p1_1/primoe/apache/logs/error_log - logs STDERR for mod_perl and apache errors. useful for looking at OpenSSO perl module.
  • /exlibris/primo/p1_1/primoe/apache/logs/error_log_ssl.<DATE> - logs ssl related errors (not very useful)
  • /exlibris/primo/p1_1/primoe/apache/logs/access_log_ssl.<DATE> - logs pds access requests


Page Attachments

No files have been attached to this page.

Added by Scot Dalton on Nov 10, 2009 00:46, last edited by Scot Dalton on Nov 12, 2009 16:56

Adaptavist Theme Builder Powered by Atlassian Confluence