Transcript Shibboleth and uApprove at University of Michigan
Shibboleth and uApprove at University of Michigan
Luke Tracy – [email protected]
Ken Hammer – [email protected]
What is uApprove?
• Developed by SWITCHaai under BSD License – http://www.switch.ch/aai/support/tools/uApprove.html
• Purposes: – For the user, mechanism to be informed about the release of attributes to a Service Provider (SP).
– For the admin of an Identity Provider (IdP) • Provides a tool to implement data protection laws by requiring to obtain user consent before personal attributes are released to a SP • Allows for collection of information about the release of attributes and accesses to SP (if configured to do so).
Source: http://www.switch.ch/aai/support/tools/uApprove.html
on June 15, 2010.
What is uApprove?
• From the user's point of view, uApprove is an application which presents a webpage, on which to – accept or decline the Terms of Use of a Shibboleth Identity Provider upon first access to the system (optional) – globally accept the release of attributes to any/all Service Providers – accept the release of attributes upon first access to a given Service Provider (if the global release has not been approved) Note: User can reset attribute release consent on a separate webpage, such that he/she will be asked again, whenever attributes have to be Source: http://www.switch.ch/aai/support/tools/uApprove.html
released. on June 15, 2010.
U of M Attribute Release
• InCommon IdP had been operating in Pilot Mode – Opt-in required – Temporarily provided means to approve the release of identity data • To move beyond Pilot – Remove barriers – Make more self-describing
Governance Board
• Investigated how others were handling privacy concerns around attribute release – Found common desire existed to be able to have individuals approve the release of attributes – Saw mention of uApprove being used within SWITCH • Demonstrated uApprove to IDM Governance Board – Liked it, but had issues with changes to data and privacy settings after approval to release – Looked into methods of detecting state changes and forcing re-approval
uApprove
• Determined best method was to prompt each time (until a more elegant solution was possible, maybe) • Discussed with uApprove developers method for forcing prompt every time – Decided together that in short term, using database triggers was optimal
Demo
User Visits Site and Selects Home University
User Logs In Using Our Single Sign On Tool
User is presented with the uApprove screen
If the user declines…
If the user approves…
uApprove configuration
• Can use a flat file or a mysql database for preferences • Can be disabled on a per-SP basis • Can configure which attributes are displayed and in what order • Optional “Terms of Use” screen • Multiple options for resetting preferences
Normally, uApprove looks like this… • Presentation controlled by .jsp templates • Template text strings stored separately to make translation easy
U-M localizations
• Database trigger / cron job combination to effect our desired login behavior • Applied our SSO “skin” to the application • Changed text to better suit our audience
attribute-resolver.xml
...
resources
• uApprove http://www.switch.ch/aai/support/tools/uApprove.html
• U-M InCommon Attribute Release Policy and Procedure - http://www.itd.umich.edu/itcsdocs/r1465/