Enabling Grids for E-sciencE

EGEE Policy Coordination Meeting(Bologna June 6-7, 2005) Overview and follow-on activities

MWSG – 14-15 September 2005, CERN
Yuri Demchenko <demch@science.uva.nl>
AIRG, University of Amsterdam

www.eu-egee.org
INFSO-RI-508833

Outline
Enabling Grids for E-sciencE• Meeting overview– Goals and discussions– Conclusions• Follow-on developments and further steps• Related activities in TF-EMC2, GEANT2 and Internet2/NMI

INFSO-RI-508833

Policy Coordination Meeting - Goals
Enabling Grids for E-sciencE• Discuss major technical developments and implementation issues– Those of which require technical policy/solutions coordination andefforts combination/distribution– Attributes and policy namespaces and schemas– Common policy and attributes management tools– Use of SAML and XACML for AuthZ and security context exchange• Coordination and compatibility - not only inside EGEE and alsowith allied projects/activities and other application areas– There are many areas from which EGEE can benefits, e.g. TFEMC2/GEANT2 (e.g., AAI, AARR, SCHAC), Internet2/NMI (e.g.,Shibboleth, GridShib), etc.
• Meeting style/convention– Topics for this meeting were set very technical – to exchange
experience and agree on issues to ensure future compatibility

INFSO-RI-508833

Discussed issues (1)Enabling Grids for E-sciencE

Developments/Tools available• INFN-CNAF– G-PBox: a policy management/distribution/aggregation
framework based on XACML– VOMS: a PKI attributes management and distribution tool

• AIRG/UvA:– AAA AuthZ Toolkit and simple AAA and XACML policy
management tools– XACML demo implementation for collaborative applications inthe Collaboratory.nl (CNL) project GAAAPI RBAC profile– SAML tickets and tokens handling tools for performance
optimisation and trust management in distributed access controlsystems
INFSO-RI-508833

Discussed issues (2)Enabling Grids for E-sciencE• Other developments and experience:– Conceptual GAAA distributed AuthZ infrastructure models
 Combined pull-push-agent models for multidomain scenarios Trust management issues– Experience of using XACML and SAML for AuthZ and Policy
enforcement– Possibility of using available products and experience forcommon AuthZ/PE framework/infrastructure in EGEE/gLite andfurther needs for coordination and collaboration

INFSO-RI-508833

Conclusion – Cooperative actions
Enabling Grids for E-sciencE• Accept SAML attributes namespace definition for SAML andXACML attributes and investigate further its suitability for ongoingworks and EGEE/gLite in general• Agree on the following key steps and stages in adopting common
namespace for EGEE (and coordinating projects)(1) attribute naming schema(2) registries and resolvers(3) special profiles• Define policy and policy set templates for basic usecase in EGEEand affiliated projects at INFN and AIRG/University of Amsterdam• Investigate compatibility and possible coordination with GridShib• Consider possible coordination and collaboration on policy andattributes compatibility with other active NRENs' initiatives andprojects, in particular, TF-EMC2 AAI, JRA5/GN2, Internet2 NMIINFSO-RI-508833

Conclusion – Coordinated actions
Enabling Grids for E-sciencE• PBox– adding Web Services functionality– investigating which attributes (of a Grid environment) are relevant toexpress policies– investigating the use of XACML with SAML
– implementing RBAC model using XACML• VOMS– adding SAML format for attributes– adding Web Services interface• GAAA and GAAAPI– simple trust/key management tools– simple policy management tools– adding Web Services interface– attaching policy to WSDL
• gLite AuthZ Framework– try to integrate PBox and GAAAPI into gLite AuthZ Framework
INFSO-RI-508833

Common namespace for EGEE
Enabling Grids for E-sciencE(1) attribute naming schema
Options:
AttributeID = urn:oasis:names:tc:xacml:1.0:subject:subject-id (:voms:subject:subject-dn)

Oruse optional element “Issuer” of the “xs:string” type
Examples from MACE (RFC3613):
Registry – http://middleware.internet2.edu/urn-mace/urn-mace.html
urn:mace:shibboleth:1.0:metadata
urn:mace:washington.edu:dir:attribute-def:uwEmployeeID(2) registries and resolvers(3) special profiles

INFSO-RI-508833

Follow-on development - AIRG
Enabling Grids for E-sciencE• GP-NG-RoN GSX Gap Analysis – use of GAAA AuthZ
Framework and Grid for dynamic resource provisioning– Optical Light Path Provisioning (OLPP) as major usecase– Currently in the final drafting stage• GAAA AuthZ framework – two basic profiles aredefined– GAAA-RBAC for Collaborative Environment– GAAA-P for interdomain network/resource provisioning• VO conceptual model revisited– VO as a framework for dynamic security associations

INFSO-RI-508833

GAAA-P – GAAA profile forProvisioning

Enabling Grids for E-sciencE• Major GAAA-P components/extensions– Workflow control in he GAAA based provisioning model WSFL and WSBPEL as upper layer to (stateless) WS/WS-Security– Special Policy profile for provisioning Policy combination and aggregation– Attributes and metadata resolution and mapping VO and Identity management usecase/profile Compatibility with GridShib-SAAS– Different types of secure credentials and validation callouts– Dynamic trust management using federated trust model Based on dynamic VO federation model WS-Trust/WS-SecureConversation Secure Token Service (STS)– Integration with GT4 Authorisation Framework
 (1) External AuthZ service using OGSA AuthZ interface
 (2) GAAA callout
 (3) internal GAAA PDP
INFSO-RI-508833

Follow-on development - INFN
Enabling Grids for E-sciencE• See Vincenzo Ciaschini’s presentation

INFSO-RI-508833

Enabling Grids for E-sciencERelated Activity –Internet2/NMIInternet2 NMI (NSF Middleware Initiative) – convergence
between Internet2 and Grid infrastructure and tools• SAAS (Shibboleth’s Attribute Authority service) andGridShib– GridShib - A Policy Controlled Attribute Framework http://grid.ncsa.uiuc.edu/GridShib/• Attributes management tools– Grouper - http://middleware.internet2.edu/dir/groups/grouper/– Signet - http://middleware.internet2.edu/signet/• MyProxy and PubCookie integration– NMI project at Univ. Virginia (and NCSA)– http://www.pubcookie.org/INFSO-RI-508833

Enabling Grids for E-sciencERelated Activity –TF-EMC2 and GEANT2TERENA TF-EMC2 and GEANT2 – European NREN’s coordinationand infrastructure• TF-EMC2 (Task Force for European Middleware Coordination) –major activities and projects– SCHAC - SCHema for ACademia - http://www.terena.nl/tech/taskforces/tf-emc2/schac.html– AA-RR - Authentication and Authorization Requester-Responder(http://www.rediris.es/app/aarr/)– TACAR (TERENA Academic CA Repository) - http://www.tacar.org/– CertiVeR (http://www.certiver.com) – OCSP service for TACAR andGrid (?)• JRA5 Roaming and Authorisation in the GEANT2– Cross-NREN federation based AA(A) (super-)infrastructure
http://www.geant2.net/server/show/nav.00d00a005

 Architecture is rather Shibboleth centric

INFSO-RI-508833

Additional information
Enabling Grids for E-sciencE– Conceptual VO model– GridShib Profile

INFSO-RI-508833

VO Controversy
Enabling Grids for E-sciencE• Problems with the VO use outside of Grid– Virtualisation– Dynamics– Trust management– Setup and configuration– Discovery (and population)– Tools

INFSO-RI-508833

Dynamic Security Associations
Enabling Grids for E-sciencE– Session – establishes security context in the form of session key that can be asecurity token or simple UID bound to secure credential/context
 Session may associate/federate users, resources and actions/processes– Job/workflow – more long-lived association and may include few sessions
 May need to associate more distributed collection of users and resources forlonger time required to deliver a final product or service
 Job and workflow may contain decision points that switch alternativeflows/processes Security context may change during workflow execution or Job lifetime
 Job description may contain both user and resource lists and also provide
security policy and trust anchor(s) (TA)– Project or mission oriented cooperation – established for longer time cooperation(involving people and resources) to do conduct some activity
 This is actually the area of currently existing VO associations– Inter-organisational association or federation – established for long-termcooperation, may have a wide scope of cooperative areas
 This is the area of inter-university associations• Shibboleth is specially designed to support this kind of federations (e.g.
InCommon or InQueue)
INFSO-RI-508833

VO Operational Models
Enabling Grids for E-sciencE– User-centric VO (VO-U) - manages user federation and provide
attribute assertions on user (client) request– Resource/Provider centric VO (VO-R) - supports provider
federation and allows SSO/access control decision sharing
between resource providers– Agent centric VO (VO-A) - provides a context for inter-domain
agents operation, that process a request on behalf of the userand provide required trust context to interaction with theresource or service– Project centric VO (VO-G) - combines User centric andProvider centric features what actually corresponds to current
VO use in Grid projects

INFSO-RI-508833

Using VO for Dynamic Resource
Provisioning (1)Enabling Grids for E-sciencE• Issues to be taken into account when considering VO for
dynamic resource provisioning:– Current VO management and VOMS infrastructure are rather designed
for long-term collaborative projects
 VO setup is a complex long-time procedure and cannot be used as asolution for the global ad-hoc dynamic trust establishment
 VOMS server Attribute Certificate is based on X.509 AC for Authorisation,
its use for Gird authorisation (with GT) suggests using Proxy Certificate
 VOMS client-server protocol is not clearly defined Current VOMS implementation has no flexible attribute namespace
management (and corresponding procedure and policy)– Dynamic VO infrastructure must provide a solution for dynamic
distributed trust management and attribute authority
 VOMS provides all necessary functionality for creating ad-hoc dynamic VOassociations
 GridShib (GT4/WS-enabled) profile can be used for VO with distributedmembership management• (Use Grouper and Signet tools for Attribute/group/roles
management/editing)
INFSO-RI-508833

Using VO for Dynamic Resource
Provisioning (2)Enabling Grids for E-sciencE• VOMS and SAAS interoperation and integration– GridShib profile targets for SAAS integration into Grid/GTenvironment
 Expected to provide a framework for combing well developed
Shibboleth attribute management solutions and VOMS functionality– Differences in VOMS and SAAS operation on the user/client andservice/resource sides
 In VOMS the user first needs to obtain VOMS AC by requesting
particular VOMS server, and next include it into newly generated
Proxy Cert and send request to the service
 In SAAS the user sends request to the Shib-aware service and may
include a particular IdP reference, otherwise service will poll trusted
AA/IdP’s based on preconfigured list of trusted providers.
 VOMS requires user ID and therefore doesn’t provide (user)
controlled privacy protection (in contrary to Shibboleth).

INFSO-RI-508833

VO and DNSSEC – Feasibility
Analysis

Enabling Grids for E-sciencE– Existing LCG/EGEE VO registration procedure allows actuallyusing DNSSEC for populating VO together with its (secondary)
public key that can be used for initial trusted introduction of theVO and secure session request by the requestor
 VO registry problem can be solved– DNSSEC limitations
 Limited space for putting the key information because ofDNS/DNSSEC response message allows only one non-fragmented
package of size 1220 bytes for standard DNS message and 4000
bytes for special DNSSEC extension [RFC4034]
 DNSSEC domain record (in our case VO domain name) and key
must be signed by upper layer domain’s key, and therefore
DNSSEC trust tree must be compatible with the application oriented
trust domain

INFSO-RI-508833

GridShib Attribute Handling
ModelsEnabling Grids for E-sciencE• Basic Globus-Shibboleth integration without anonymity using
attributes request/pull by the resource from the trusted SAAS
• Basic Globus-Shibboleth integration without anonymity using
attributes provided by the requestor which are previously
obtained from the trusted SAAS
• Globus-Shibboleth integration with anonymity and attributes
requested by the resource from the trusted SAAS that is canrelease attributes based on user pseudonym or authentication
confirmation credentials.
• Globus-Shibboleth integration with anonymity using attributes
provided by the requestor which are previously obtained from thetrusted SAAS for the user pseudonym or anonymous
authentication confirmation credentials (Authentication/identitytoken)

INFSO-RI-508833

Establishing Security context for
GridShibEnabling Grids for E-sciencE

1. The Grid User and the Grid Service each possess an X.509 credentialthat uniquely identifies them.
2. The Grid User is enrolled with a Shibboleth Identity Provider (IdP), andcorrespondently with IdP’s AA.
3. The IdP is able to map the Grid User's X.509 Subject DN to one andonly one user in its security domain.
4. The IdP and the Grid Service each have been assigned a unique
identifier called a providerId.
5. The Grid Client application has access to the Grid User's X.509
certificate and the IdP providerId. This information is used to create
Proxy Cert that will contain IdP providerId and signed by the User
private key.
6. The Grid Service has a set of certificates identifying IdP/AAs that ittrusts to provide attributes suitable for use in authorization decisions.
7. The Grid Service and the IdP rely on the same metadata format andexchange this metadata out-of-band.
8. It is assumed that all X.509 End-Entity Certificates (EEC) are issued by
CAs that are trusted by all parties mentioned in this document.
INFSO-RI-508833