Web app AAI Integration How to integrate web applications with AAI in general?



Similar documents
Shibboleth and Library Resources

Federated Identity: Leveraging Shibboleth to Access On and Off Campus Resources

AAI for Mobile Apps How mobile Apps can use SAML Authentication and Attributes. Lukas Hämmerle

Toward campus portal with shibboleth middleware

E-LibUkr portal: Case study of Shibboleth and EZProxy in Ukraine.

AA enabling a closed source legacy application

A Shibboleth View of Federated Identity. Steven Carmody Brown Univ./Internet2 March 6, 2007 Giornata AA - GARR

Single Sign-On for the UQ Web

Federating with Web Applications

Web based single sign on. Caleb Racey Web development officer Webteam, customer services, ISS

Middleware integration in the Sympa mailing list software. Olivier Salaün - CRU

Identity Management. Manager, Identity Management. Academic Technology Services. Michigan State University Board of Trustees

Lets get a federated identity. Intro to Federated Identity. Feide OpenIdP. Enter your address. Do you have access to your ?

Lost in Authentication CAS Clients and Best Practices

Shibboleth N-Tier Support. Chad La Joie

Logout Support on SP and Application

External Authentication with WebCT. What We ll Discuss

Perceptive Experience Single Sign-On Solutions

Security Assertion Markup Language (SAML) Site Manager Setup

Federated AAA middleware and the QUT SSO environment

Federated Identity Management and Shibboleth. Noreen Hogan Asst. Director Enterprise Admin. Applications

Authentication Methods

S P I E Information Environments Shibboleth and Its Integration into Security Architectures. EDUCAUSE & Internet 2 Security Professionals Conference

Copyright: WhosOnLocation Limited

IAM, Enterprise Directories and Shibboleth (oh my!)

Integration of Shibboleth and (Web) Applications

PingFederate. SSO Integration Overview

IGI Portal architecture and interaction with a CA- online

WebNow Single Sign-On Solutions

Shibboleth Identity Provider (IdP) Sebastian Rieger

Identity Management in Liferay Overview and Best Practices. Liferay Portal 6.0 EE

Beyond The Web Drupal Meets The Desktop (And Mobile) Justin Miller Code Sorcery Workshop, LLC

Development and deployment of integrated attribute based access control for collaboration

Configuring. Moodle. Chapter 82

Three Case Studies in Access Management

Federated Identity for Cloud Computing and Cross-organization Collaboration

SAML Security Option White Paper

Moodle and Office 365 Step-by-Step Guide: Federation using Active Directory Federation Services

Computer Systems Security 2013/2014. Single Sign-On. Bruno Maia Pedro Borges

Architecture of Enterprise Applications III Single Sign-On

How To Use Saml 2.0 Single Sign On With Qualysguard

Authentication and access control in Sympa mailing list server

Authentication Integration

Using Shibboleth for Single Sign- On

Masdar Institute Single Sign-On: Standards-based Identity Federation. John Mikhael ICT Department

SAML SSO Configuration

SAML-Based SSO Solution

Integration Guide. SafeNet Authentication Service. Using SAS as an Identity Provider for Drupal

An introduction of several development activities related to Shibboleth and Web browser-based simple PKI

globus online Integrating with Globus Online Steve Tuecke Computation Institute University of Chicago and Argonne National Laboratory

CMSs, Open Source, Hosted & Cloud-Based Applications

Integration Guide. SafeNet Authentication Service. Oracle Secure Desktop Using SAS RADIUS OTP Authentication

LIGO Authentication and Authorization 2.0

Authentication and access control in Sympa mailing list software

Mobile Security. Policies, Standards, Frameworks, Guidelines

Xerox DocuShare Security Features. Security White Paper

How To Create A Personalized Website In Chalet.Ch

esoc SSA DC-I Part 1 - Single Sign-On and Access Management ICD

1. Introduction. Authors. Abstract. Quang Vu DANG (IFI) Olivier BERGER (GET/INT) Christian BAC (GET/INT) Benoît HAMET (phpgroupware)

SAML single sign-on configuration overview

PingFederate. Integration Overview

UNIL Administration. > Many databases and applications:

2 Downloading Access Manager 3.1 SP4 IR1

Federated Identity Management

Authentication and Single Sign On

Step-by-Step guide for SSO from MS Sharepoint 2010 to SAP EP 7.0x

Alfresco Share SAML. 2. Assert user is an IDP user (solution for the Security concern mentioned in v1.0)

Identity Federation: Bridging the Identity Gap. Michael Koyfman, Senior Global Security Solutions Architect

Adaptive Authentication Integration Options. John Murray Manager, RSA Systems Engineering

QuickStart Guide for Mobile Device Management

Web Single Sign- On: OpenID, Shibboleth, and friends COSC412

SAML-Based SSO Solution

Single Sign On. SSO & ID Management for Web and Mobile Applications

Comparing and Evaluating Open Source E-learning Platforms

About Me. Software Architect with ShapeBlue Specialise in. 3 rd party integrations and features in CloudStack

SSO Plugin. Release notes. J System Solutions. Version 3.6

QuickStart Guide for Mobile Device Management. Version 8.6

Open-source Single Sign-On with CAS (Central Authentication Service)

Using SAML for Single Sign-On in the SOA Software Platform

Connecting Web and Kerberos Single Sign On

Enter Here --->> New Instant Directory Profits Software - ebook

External Identity and Authentication Providers For Apache HTTP Server

U S E R D O C U M E N TA T I O N ( A L E P H I N O

Transcription:

Web app AAI Integration How to integrate web applications with AAI in general? Lukas Hämmerle lukas.haemmerle@switch.ch Zurich, 8. February 2009 6

Goal of this presentation 1. List the general requirements for integrating AAI into a general web application (not SAP-specific) 2. Out-line what AAI Integration means and involves 3. Describe some technical aspects of the integration 7 7

Some Terminology Home Organisation IdP Home Organisation Operates an Identity Provider that authenticates a user and asserts identity information about this user in form of SAML assertions SP Resource Application Resource Consists of Service Provider that protects one or more web-applications by enforcing authentication. Provides SAML identity assertions in form of attributes to the application(s). 8 8

The Advantages of AAI University A Library B University C AAI Student Adm Web Portal e-learning e-journals Literature DB No user registration and user data maintenance at resource needed Single login process for the users Many new resources available for the users Authorization independent of location Efficient implementation of inter-institutional access Research DB e-learning User Administration Authentication Authorization Resource Credentials 9 9

Shibboleth - The Software Behind AAI Open Source developed by Word Shibboleth was used to identify members of a group Based on Security Assertion Markup Language (SAML) Internationally used (mostly in academic sector) http://shibboleth.internet2.edu 10 10

AAI - Authentication and Authorization Infrastructure Federation Service Provider Identity Provider Users SP SP IdP SP IdP SP IdP SP SP SP SP SP 11 11

Shibboleth The components IdP Identity Provider (IdP) Authenticates user Asserts identities SP Service Provider (SP) Protects web-application Enforces authentication 12 12

Shibboleth Service Provider for Apache/IIS Runs on: Linux, Solaris, Windows, Mac OS X, FreeBSD, Protects static content and web applications shibd fetches attributes Authorizes users using! Apache directives! Shibboleth XML Access rules Apache/IIS Web server mod_shib mod_php mod_jk shibd Modules Provides attributes to applications! Alternative authorization method PHP Application Tomcat Java Application 1 Java Application 2 13 13

Login Procedure from User s View Resource WAYF Service User's Home Org Resource Where Are You From? University B Login Page Welcome at Resource https://www.resource.ex/ https://www.wayf.ex/ https://www.uni-b.ex/ https://www.resource.ex/ Select your Home Organization University A University B Hospital C Submit Authenticate yourself User name hmuster Password **** Cancel OK Hans Muster's Content: Your Online Content: Medical Training 1 Medical Training 2 Live Stream 3... Access Resource Choose Home Org. (not always necessary) Provide credentials Use Resource Application receives user s attributes 14 14

How to Use AAI Attributes in Application On Shibboleth-protected pages, user attributes can be directly read from web server environment. PHP $email = $_SERVER['Shib-InetOrgPerson-mail']; Perl $email =$ENV{'Shib-InetOrgPerson-mail'}; Java String email = ""; email = request.getheader("shib-inetorgperson-mail"); 15 15

Attributes That Are Available in AAI Personal Unique Identifier Surname Given name E-mail User ID Matriculation number Employee number Address(es) Phone number(s) Preferred language Date of birth Gender Group Membership Home Organization Name Home Organization Type Affiliation Study branch Study level Staff category Group membership Organization Path Organizational Unit Path Implementation of Attributes! Mandatory! Recommended or optional Based on! eduperson Attributes! Schweizerisches Hochschulinformationssystem (SHIS) NO password (in general) http://www.switch.ch/aai/attributes 16 16

Some Already Shibbolized Applications Information Providers: Learning Management Systems: Other Systems: American Chemical Society NSDL Blackboard Bodington.org JISCmail ArtSTOR OCLC CLIX Condor LionShare Atypon Ovid Technologies Inc. Fronter Confluence Wiki Media Wiki CSA Project MUSE ILIAS Darwin Streaming Server Microsoft Digitalbrain PLC Proquest Information and Learning INSTRUCT Drupal MyProxy EBSCO Publishing Serials Solutions Moodle DSpace Napster Elsevier ScienceDirect SCRAN OLAT eacademy PHEAA ExLibris Schweizerisches Bundesgericht Sakai Fedora Repository Sharepoint from Microsoft H.W. Wilson Thomson Gale WebAssign Google Apps/Email SYMPA JSTOR Thomson Reuters WebCT GridSphere Symplicity The Literary Encyclopedia Useful Utilities - EZproxy GridShib TurnItIn Metapress Higher Markets TWiki Horde uportal Hupnet WordPress Zope + Plone\ More up-to-date and comprehensive list: https://spaces.internet2.edu/display/shib2/shibenabled 17 17

Questions to Consider Before Integration Feasibility Can I modify the application logic/code at all? Is the application open source or is there an API? Level of Integration How much shall be integrated? Authentication? Authorization? Enrollment? Logout? De-provisioning? Sustainability Can changes be included in official source tree? What happens after version 1.0 or in cases of bugs? 18 18

Levels of Integration How deep shall the integration go? 1. Authentication 2. Registration/Provisioning 3. Enrollment 4. (Single) Logout 5. Account Deletion/De-provisioning 19 19

1. Authentication Simple case: Application relies on external session management like HTTP Basic Auth. Shibboleth can then set the REMOTE_USER header variable with an AAI attribute. (This is one of the presented approaches for SAP) More complex case: Application uses it s own session management. Application code must be extended to set up application session using AAI attributes. Examples: Almost all e-learning applications 20 20

2. Registration/Provisioning Create a user entry within the application based on AAI attributes the first time a user accesses the application. Update user data using AAI attributes Available already in quite some web applications: Moodle, BSCW, ILIAS,... Example: Moodle Shibboleth Settings 21 21

3. (Auto-) Enrollment Assign a user privileges or roles based on attributes Not available in many web applications yet: Available e.g. in ILIAS (see next slide) Should become more common in the future with the establishment of Virtual Organizations (VO) 22 22

(Auto-) Enrollment Example (ILIAS) 23 23

4. (Single) Logout Single-Log-In is easy but what about logout? Only concerns applications with own session management Logout implemented in Moodle, ILIAS and a few other web applications but support in Identity Provider still missing. Inedible cookies, sticky sessions and false hopes http://switch.ch/export/sites/default/uni/security/aai/event/ aai-info-day-2009/slides/aai-id09-51-slo.pdf 24 24

5. Account Deletion/De-Provisioning How to get rid of user entries of users who left an organization on application side? No solution in production yet! How to find and kill zombie users http://switch.ch/aai/support/presentations/opcom-200909/ AAI-OpCom-Account-Checking.pdf 25 25

Technical Integration Issues Login name vs user name vs screen name Sometimes no attribute can be used as username Generate screen name (e.g. ILIAS) or ask user for one (e.g. OLAT) Password is not available as attribute Generate random password. Won t be used in general. Related Non-Web services are not (yet) Shib-enabled Provide way for user to set password for that service Federation-specific attribute names and values Provide mapping between Shibboleth and application attributes Provide hook or API to do conversion/transformation 26 26

Short Summary for Developers Shibboleth works with anything running behind Apache/IIS CGI, PHP, Perl, Python, Java (via Tomcat),.Net, Ruby,... Shibboleth enforces authentication and authorization Files, Directories, Sub-Directories, Locations Shibboleth attributes available in web server environment No API or library is needed to read them. 27 27