Published on October 2, 2007
Tools for Grid/Campus Integration:GridShib and MyProxyInternet2 Advanced CampJuly 1, 2005: Tools for Grid/Campus Integration: GridShib and MyProxy Internet2 Advanced Camp July 1, 2005 Von Welch email@example.com Outline: Outline GridShib Overview of Shibboleth and Globus Our Motivation and Use Cases Integration Approach Status MyProxy Overview Local Authn Support Shibboleth: Shibboleth http://shibboleth.internet2.edu/ Internet2 project Allows for inter-institutional sharing of web resources (via browsers) Provides attributes for authorization between institutions Allows for pseudonymity via temporary, meaningless identifiers called ‘Handles’ Standards-based (SAML) Being extended to non-web resources Shibboleth: Shibboleth Identity Provider composed of single sign-on (SSO) and attribute authority (AA) services SSO: authenticates user locally and issues authentication assertion with Handle Assertion is short-lived bearer assertion Handle is also short-lived and non-identifying Handle is registered with AA Attribute Authority responds to queries regarding handle Shibboleth: Shibboleth Service Provider composed of Assertion Consumer and Attribute Requestor Assertion Consumer parses authentication assertion Attribute Requestor: request attributes from AA Attributes used for authorization Where Are You From (WAYF) service determines user’s Identity Provider Shibboleth (Simplified): Shibboleth (Simplified) AA SSO Shibboleth IdP Handle Attributes SAML AR ACS Shibboleth SP Handle LDAP (e.g.) Globus Toolkit: Globus Toolkit http://www.globus.org Toolkit for Grid computing Job submission, data movement, data management, resource management Based on Web Services and WSRF Security based on X.509 identity- and proxy-certificates Maybe from conventional or on-line CAs Some initial attribute-based authorization Motivation: Motivation Many Grid VOs are focused on science or business other than IT support Don’t have expertise or resources to run security services Allow for leveraging of Shibboleth code and deployments run by campuses Use Cases: Use Cases Project leveraging campus attributes Simplest case Project-operated Shib service Project operates own service, conceptually easy, but not ideal Campus-operated, project-administered Shib Ideal mix, but need mechanisms for provisioning of attribute administration Integration Approach: Integration Approach Conceptually, replace Shibboleth’s handle-based authentication with X509 Provides stronger security for non-web browser apps Works with existing PKI install base To allow leveraging of Shibboleth install base, require as few changes to Shibboleth AA as possible GridShib (Simplified): GridShib (Simplified) A SSO Shibboleth DN Attributes DN DN SAML SSL/TLS, WS-Security Integration Areas: Integration Areas Assertion Transmission Attribute Authority Discovery Distribute Attribute Administration User Registration Pseudonymous Interaction Authorization Assertion Transmission: Assertion Transmission How to get SAML assertions from AA into Globus? Initially: Pull mode with Globus acting as a Shibboleth Attribute Requestor Will explore Pull modes to help with privacy and role combination Implement Grid Name Mapper to map X509 DNs to local identities used to obtain attributes Attribute Authority Discovery: Attribute Authority Discovery No interactive WAYF service in the Grid Place identifier of Identity Provider in cert Either in long-term EEC or short-term Proxy Cert Will explore pushing attributes Avoids the problem Might also address combined attributes from multiple AAs Distributed Attribute Administration: Distributed Attribute Administration Campus is ideal for running services, but may not know all attributes of users How does a campus issue attributes for which it is not authoritative? E.g. IEEE Membership of staff In Grid case, Project Membership This may be the largest hurdle due to social, political and/or legal issues Need accepted cookbook for process Plan on exploring signet http://middleware.internet2.edu/signet/ Getting Attributes into a Site’s Attribute Authority: LDAP Getting Attributes into a Site’s Attribute Authority uid: jdoe eduPersonAffiliation: … isMemberOf: … eduPersonEntitlement: … SIS HR On-site Authorities Loaders Person Registry Group Registry Grouper UI Privilege Registry Off-site Authorities Signet UI Attribute Authority Core Business Systems Shib/ GridShib using Shibboleth User Registration: User Registration How does the mapping from the User’s X509 DN to local Campus identity get made in NameMapper configuration? In initial version, this will be manual process Yes, far from ideal We envision Something akin to a registration service that authenticates user’s X509 and local credentials and puts mapping in automatically Or a portal that hides all the X509 from the user and also handles this mapping E.g. PURSE, GAMA Pseudonymous Interaction: Pseudonymous Interaction How to maintain Shibboleth pseudonymous functionality with X509? Will develop online CA that issues certificates with non-identifying DNs Register with AA just as SSO Basically holder-of-key assertions Authorization: Authorization Develop authorization framework in Globus Toolkit Pluggable modules for processing authentication, gathering and processing attributes and rendering decisions XACML used for expressing gathered identity, attribute and policy information Convert Attributes into common format for policy evaluation Allows for common evaluation of attributes expressed in SAML and X509 (and others…) GridShib Status: GridShib Status Testing initial version internal to project Will be a drop-in addition to GT 4.0 and Shibboleth 1.3 Plan on releasing Beta version 2-3 weeks after Shibboleth 1.3 is released Looking for interested testers Project website: http://grid.ncsa.uiuc.edu/GridShib/ Acknowledgements and Details: Acknowledgements and Details NSF NMI project to allow the use of Shibboleth-issued attributes for authorization in NMI Grids built on the Globus Toolkit Funded under NSF award SCI-0438424 GridShib team: NCSA, U. Chicago, ANL Tom Barton, David Champion, Tim Freemon, Kate Keahey, Tom Scavo, Frank Siebenlist, Von Welch Working in collaboration with Steven Carmody, Scott Cantor, Bob Morgan and the rest of the Internet2 Shibboleth Design team MyProxy Enhancements for Local Integration: MyProxy Enhancements for Local Integration Bill Baker, Jim Basney and Von Welch NCSA What is MyProxy?: What is MyProxy? Independent Globus Toolkit add-on since 2000 To be included in Globus Toolkit 4.0 A service for securing private keys Keys stored encrypted with user-chosen password Keys never leave the MyProxy server A service for retrieving proxy credentials A commonly-used service for grid portal security Integrated with OGCE, GridSphere, and GridPort, PURSE, GAMA Proxy Credentials: Proxy Credentials RFC 3820: Proxy Certificate Profile Associate a new private key and certificate with existing credentials Short-lived, unencrypted credentials for multiple authentications in a session Restricted lifetime in certificate limits vulnerability of unencrypted key Credential delegation (forwarding) without transferring private keys Proxy A signs signs Proxy B signs Proxy Delegation: Proxy Delegation Delegator Delegatee Generate new key pair Sign new proxy certificate Proxy Proxy certificate request Proxy Proxy 1 2 3 4 MyProxy System Architecture: MyProxy System Architecture MyProxy server Credential repository Retrieve proxy Store proxy Proxy delegation over private TLS channel MyProxy client MyProxy: Credential Mobility: MyProxy: Credential Mobility myproxy.teragrid.org tg-login.uc.teragrid.org tg-login.caltech.teragrid.org tg-login.sdsc.teragrid.org tg-login.ncsa.teragrid.org ca.ncsa.uiuc.edu Obtain certificate Store proxy Retrieve proxy MyProxy and Grid Portals: MyProxy and Grid Portals Portal MyProxy server GridFTP server Login Fetch proxy Access data MyProxy and PAM: MyProxy and PAM MyProxy now has ability to use PAM for authentication As a replacement for locally-stored password Users can use existing authentication mechanism to access Grid Credentials Has been tested with PAM modules for LDAP, Kerberos, OTP (CryptoCard) via RADIUS LTER Grid Example: LTER Grid Example MyProxy server PAM LTER LDAP LTER Portal Creds Job Submission GridFTP LDAP Username & Password Proxy Status: Status PAM Support in MyProxy v2.0 which is released Available at http://myproxy.ncsa.uiuc.edu Pam-specific documentation: http://grid.ncsa.uiuc.edu/myproxy/pam.html PAM enhancements funded by NMI Grids Center
GridShib Project Summary Report. ... Von Welch, Tom Barton, Kate ... http://grid.ncsa.uiuc.edu/presentations/welch-adv-camp-july05.ppt; Von Welch.
Tools for Grid/Campus Integration: GridShib and MyProxy Internet2 Advanced Camp July 1, 2005 Von Welch firstname.lastname@example.org