INFSO-RI-508833 Enabling Grids for E-sciencE Security in gLite Gergely Sipos MTA SZTAKI With thanks for some slides to.

Slides:



Advertisements
Similar presentations
Introduction of Grid Security
Advertisements

EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Introduction to EGEE hands-on Gergely Sipos.
Public Key Infrastructure A Quick Look Inside PKI Technology Investigation Center 3/27/2002.
Liang ZHAO, PKU EUChinaGrid 3 rd Tutorial Nov.25, 2006 Authentication and Authorization in gLite Liang ZHAO Peking University.
Grid Computing, B. Wilkinson, 20045a.1 Security Continued.
Grid Security Infrastructure Tutorial Von Welch Distributed Systems Laboratory U. Of Chicago and Argonne National Laboratory.
Lecture 2: Security Rachana Ananthakrishnan Argonne National Lab.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE Tutorial Getting started with GILDA.
Grid Security. Typical Grid Scenario Users Resources.
DESIGNING A PUBLIC KEY INFRASTRUCTURE
Security on Grid Roberto Barbera Univ. of Catania and INFN
INFSO-RI Enabling Grids for E-sciencE Security, Authorisation and Authentication Mike Mineter Training, Outreach and Education National.
GLite authentication and authorization Discipline: Grid Computing, 07/08-2 Practical classes Inês Dutra, DCC/FCUP.
\ Grid Security and Authentication1. David Groep Physics Data Processing group Nikhef.
Security Management.
Digital Signature Xiaoyan Guo/ Xiaohang Luo/
Enabling Grids for E-sciencE Security on gLite middleware Matthieu Reichstadt CNRS/IN2P3 ACGRID School, Hanoi (Vietnam) November 5th, 2007.
INFSO-RI Enabling Grids for E-sciencE Practicals on VOMS and MyProxy Emidio Giorgio INFN Retreat between GILDA and ESR VO, Bratislava,
INFSO-RI Enabling Grids for E-sciencE EGEE Security Basics for the User Guy Warner NeSC Training Team An Induction to EGEE for GOSC.
INFSO-RI Enabling Grids for E-sciencE Getting Started Guy Warner NeSC Training Team Induction to Grid Computing and the National.
Grid Security 1. Grid security is a crucial component Need for secure communication between grid elements  Authenticated ( verify entities are who they.
Chapter 23 Internet Authentication Applications Kerberos Overview Initially developed at MIT Software utility available in both the public domain and.
Certificate-Based Operations. Module Objectives By the end of this module participants will be able to: Define how cryptography is used to secure information.
INFSO-RI Enabling Grids for E-sciencE Sofia, 22 March 2007 Security, Authentication and Authorisation Mike Mineter Training, Outreach.
E-science grid facility for Europe and Latin America E2GRIS1 Raúl Priego Martínez – CETA-CIEMAT (Spain)‏ Itacuruça (Brazil), 2-15 November.
Security, Authorisation and Authentication.
E-infrastructure shared between Europe and Latin America Security Hands-on Christian Grunfeld, UNLP 8th EELA Tutorial, La Plata, 11/12-12/12,2006.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Introduction to GILDA and gaining access.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Next steps with EGEE EGEE training community.
June 24-25, 2008 Regional Grid Training, University of Belgrade, Serbia Introduction to gLite gLite Basic Services Antun Balaž SCL, Institute of Physics.
INFSO-RI Enabling Grids for E-sciencE GILDA Practicals : Security systems GILDA Tutors Singapore, 1st South East Asia Forum -- EGEE.
E-infrastructure shared between Europe and Latin America FP6−2004−Infrastructures−6-SSA Hands-on on security Pedro Rausch IF - UFRJ.
EGEE-II INFSO-RI Enabling Grids for E-sciencE The GILDA training infrastructure.
Security fundamentals Topic 5 Using a Public Key Infrastructure.
Authorisation, Authentication and Security Guy Warner NeSC Training Team Induction to Grid Computing and the EGEE Project, Vilnius,
Hands-on security Angelines Alberto Morillas Ciemat.
4th EELA TUTORIAL - USERS AND SYSTEM ADMINISTRATORS E-infrastructure shared between Europe and Latin America Security Hands-on Vanessa.
DTI Mission – 29 June LCG Security Ian Neilson LCG Security Officer Grid Deployment Group CERN.
FP6−2004−Infrastructures−6-SSA E-infrastructure shared between Europe and Latin America Practicals on Security Miguel Cárdenas Montes.
E-infrastructure shared between Europe and Latin America Security Hands-on Alexandre Duarte CERN Fifth EELA Tutorial Santiago, 06/09-07/09,2006.
EGEE-II INFSO-RI Enabling Grids for E-sciencE MyProxy - a brief introduction.
1 Grid School Module 4: Grid Security. 2 Typical Grid Scenario Users Resources.
Security, Authorisation and Authentication Mike Mineter, Guy Warner Training, Outreach and Education National e-Science Centre
INFSO-RI Enabling Grids for E-sciencE Authorisation and Authentication in gLite Mike Mineter National e-Science Centre, Edinburgh.
WLCG Authentication & Authorisation LHCOPN/LHCONE Rome, 29 April 2014 David Kelsey STFC/RAL.
INFSO-RI Enabling Grids for E-sciencE VOMS & MyProxy interaction Emidio Giorgio INFN NA4 Generic Applications Meeting 10 January.
Hands-on security Carlos Fuentes RedIRIS Madrid,26 – 30 de Octubre de 2008.
Hands on Security, Authentication and Authorization Virginia Martín-Rubio Pascual RedIRIS/Red.es Curso Grid y e-Ciencia.
EGI-InSPIRE RI Grid Training for Power Users EGI-InSPIRE N G I A E G I S Grid Training for Power Users Institute of Physics Belgrade.
The EPIKH Project (Exchange Programme to advance e-Infrastructure Know-How) 马兰馨 IHEP, CAS Hands on gLite Security.
1 Grid Security Jinny Chien Academia Sinica Computing Centre Deployment team.
Enabling Grids for E-sciencE gLite security pratical tutorial Dario Russo INFN Catania Catania,
Trusted Organizations In the grid world one single CA usually covers a predefined geographic region or administrative domain: – Organization – Country.
Security, Authentication and Authorization Virginia Martín-Rubio Pascual RedIRIS/Red.es Curso Grid y e-Ciencia 2010, Valencia.
Prof. Reuven Aviv, Nov 2013 Public Key Infrastructure1 Prof. Reuven Aviv Tel Hai Academic College Department of Computer Science Public Key Infrastructure.
Academia Sinica Grid Computing Certification Authority F2F interview (Malaysia )
EGEE-II INFSO-RI Enabling Grids for E-sciencE Authentication, Authorisation and Security Mike Mineter, National e-Science Centre.
EGEE-II INFSO-RI Enabling Grids for E-sciencE Authentication, Authorisation and Security Emidio Giorgio INFN Catania.
INFSO-RI Enabling Grids for E-sciencE Sofia, 17 March 2009 Security, Authentication and Authorisation Mike Mineter Training, Outreach.
EGEE-II INFSO-RI Enabling Grids for E-sciencE Overview of gLite grid middleware Gergely Sipos MTA SZTAKI
(Exchange Programme to advance e-Infrastructure Know-How) The EPIKH Project Hailong Yang
Security, Authorisation and Authentication Mike Mineter,
Security in gLite Gergely Sipos MTA SZTAKI
Authentication, Authorisation and Security
Grid Security.
Authorization and Authentication in gLite
Security and getting access to the training infrastructure
Security, Authorisation and Authentication
Grid Security Jinny Chien Academia Sinica Grid Computing.
Grid Security M. Jouvin / C. Loomis (LAL-Orsay)
Presentation transcript:

INFSO-RI Enabling Grids for E-sciencE Security in gLite Gergely Sipos MTA SZTAKI With thanks for some slides to EGEE and Globus colleagues

Enabling Grids for E-sciencE INFSO-RI What is Grid security? So Grid Security is security to enable VOs What is needed in terms of security for a VO? The Grid problem is to enable “coordinated resource sharing and problem solving in dynamic, multi- institutional virtual organizations.” From ”The Anatomy of the Grid” by Ian Foster at. al

Enabling Grids for E-sciencE INFSO-RI Virtual Organization concept VO for each application or workload Carve out and configure resources for a particular use and set of users The more dynamic the better…

Enabling Grids for E-sciencE INFSO-RI The problems How can the members of the VO identified? Who does belong to a VO? Who does not? How does a machine identifies its client? How are access rights controlled? How does a user access a VO resource without having an user account on the machines in between or even on the resource? User Storage Element Broker Computing Element

Enabling Grids for E-sciencE INFSO-RI The Problems -2: reducing vulnerability Launch attacks to other sites –Large distributed farms of machines, perfect for launching a Distributed Denial of Service attack. Illegal or inappropriate data distribution and access sensitive information –Massive distributed storage capacity ideal for example, for swapping movies. –Growing number of users have data that must be private – biomedical imaging for example Damage caused by viruses, worms etc. –Highly connected infrastructure means worms could spread faster than on the internet in general.

Enabling Grids for E-sciencE INFSO-RI Grid Security Infrastructure - GSI Authentication: how is identity of user/site communicated? Authorisation: what can a user do? Encription: encripted messages Integrity: unchanged messages Grid Security Infrastructure Authentication Encryption & Data Integrity Authorization Security

Enabling Grids for E-sciencE INFSO-RI Basis of security & authentication Asymmetric encryption… …. and Digital signatures … –A hash derived from the message and encrypted with the signer’s private key –Signature is checked by decrypting with the signer’s public key Are used to build trust –That a user / site is who they say they are –And can be trusted to act in accord with agreed policies Encrypted text Private Key Public Key Clear text message

Enabling Grids for E-sciencE INFSO-RI Basis of Grid Security Infrastructure: Public Key Algorithms Every entity that wants to join a VO (user/machine/software) has two keys: one private and one public: –it is impossible to derive the private key from the public one; –a message encrypted by one key can be decrypted only by the other one. Concept (simplified version): –Public keys are exchanged –The sender encrypts using receiver’s public key –The reciever decrypts using their private key; John’s keys public private PaulJohn ciao3$rciao3$r

Enabling Grids for E-sciencE INFSO-RI Digital Signatures in use: Non repudiation and message integrity hashPaul calculates the hash of the message: a 128 bit value based on the content of the message private digital signaturePaul encrypts the hash using his private key: the encrypted hash is the digital signature. Paul sends the signed message to John. John calculates the hash of the message  Hash B publicDecrypts A with Paul’s public key  Hash A If hashes equal: 1. hash B is from Paul’s private key; 2. message wasn’t modified; John message Digital Signature Paul message Digital Signature message Digital Signature Hash A Paul’s keys publicprivate Hash B Hash A = ?

Enabling Grids for E-sciencE INFSO-RI Public and private keys Public key is wrapped into a “certificate file” Certificate files are created by trusted third parties: Grid Certification Authorities (CA) Private key is stored in encripted file – protected by a passphrase Prive key is created by the grid user Certificate Public key Subject:/C=HU/O=NIIF CA/OU=GRID/OU=NIIF/CN=Gergely Issuer: C=CH, O=CERN, OU=GRID, CN=CERN CA Expiration date: Aug 26 08:08: GMT Serial number: 625 (0x271) Optional Extensions CA Digital signature

Enabling Grids for E-sciencE INFSO-RI Certification Authorities User’s identity has to be certified by one of the national Certification Authorities (CAs) Resources are also certified by CAs CAs recognized by EGEE VOs: CAs can establish a number of people “registration authorities” RAs –Personal visit to the nearest RA instead of the national CA

Enabling Grids for E-sciencE INFSO-RI The Grid Security Infrastructure (GSI) every Grid transaction is mutually authenticated: 1. A sends his certificate; 2. B verifies signature in A’s certificate using CA public certificate; 3. B sends to A a challenge string; 4. A encrypts the challenge string with his private key; 5. A sends encrypted challenge to B 6. B uses A’s public key to decrypt the challenge. 7. B compares the decrypted string with the original challenge 8. If they match, B verified A’s identity and A can not repudiate it. 9. Repeat for A to verify B’s identity A B A’s certificate Verify CA signature Random phrase Encrypt with A’ s private key Encrypted phrase Decrypt with A’ s public key Compare with original phrase Based on X.509 PKI:

Enabling Grids for E-sciencE INFSO-RI The Grid Security Infrastructure (GSI) - continued Default: message integrity checking –Not private – a test for tampering. For private communication: –Encrypt all the message (not just hash) - Slower After A and B authenticated each other, for A to send a message to B: A B Generate hash from message Message + Encrypted hash Decrypt with A’ s public key Compare with decrypted hash Encrypt hash with A’ s private key Further encrypt hash with B’ s public key Decrypt with B’ s private key Generate hash from message

Enabling Grids for E-sciencE INFSO-RI Issuing a grid certificate Private Key encrypted on local disk Cert Request Public Key ID Cert User generates public/private key pair in browser or in files. User sends public key to CA and shows RA proof of identity. CA signature links identity and public key in certificate. CA informs user. CA root certificate Instructions, tutorials (should be) on CA homepages

Enabling Grids for E-sciencE INFSO-RI User’s responsibilities 1. Keep your private key secure –if possible on a USB drive only Do not loan your certificate to anyone Report to your local/regional contact if your certificate has been compromised. Note file access rights: If your certificate is used by someone other than you, it cannot be proven that it was not you. sipos]$ ls -l.globus/ total 8 -rw-r--r-- 1 sipos users 1761 Oct usercert.pem -r sipos users 951 Oct userkey.pem

Enabling Grids for E-sciencE INFSO-RI Joining a VO Steps –User obtains certificate from Certification Authority –User registers at the VO  usually via a web form –VO manager authorizes the user  VO DB updated –User information is replicated onto VO resources within 24 hours CA VO mgr Obtaining certificate: Annually VO database Grid sites VOMS Joining VO: Once Updating local VO database once a day User’s identity in the Grid = Subject of certificate: /C=HU/O=NIIF CA/OU=GRID/OU=NIIF/CN=Gergely List of EGEE VOs: On CIC Operations Portal

Enabling Grids for E-sciencE INFSO-RI Need for delegation Site A Site B Site C Computing Element User Start this job for me on the “best” resource of biomed VO! Broker Computing Element Storage Element - Authenticate and authorize user - Access file Remote file access request* * With mutual authentication Process Remote process creation requests* - Authenticate and authorize user - Create process Process - Authenticate and authorize user - Create process Remote process creation requests*

Enabling Grids for E-sciencE INFSO-RI Delegation of user identies by limited proxies Delegation - allows remote process and services to authenticate on behalf of the user –Remote process/service “impersonates” the user Achieved by creation of next-level key-pair from the user’s key-pair. –New key-pair is a single file: Proxy credential –Proxy has limited lifetime –Proxy may be valid for limited operations The client can delegate the proxy to processes –Each service decides whether it accepts proxies for authentication

Enabling Grids for E-sciencE INFSO-RI Basic services of gLite Computing Element Storage Element Site X Information System Submit job query Retrieve status & output Resource Broker User Interface publish state File and Replica Catalog Authorization Service (VO Management Service) query create credential process Retrieve status & output

Enabling Grids for E-sciencE INFSO-RI Logging into the Grid: Creating a proxy credential % voms-proxy-init  login to the Grid Enter PEM pass phrase: ******  private key is protected by a password –Options for voms-proxy-init:  VO name  -hours  -bits  -help sipos]$ voms-proxy-init --voms gilda Enter GRID pass phrase: *********** Your identity: /C=HU/O=NIIF CA/OU=GRID/OU=NIIF/CN=Gergely Creating temporary proxy Done Contacting voms.ct.infn.it:15001 [/C=IT/O=INFN/OU=Host/L=Catania/CN=voms.ct.infn.it] "gilda" Done Creating proxy Done Your proxy is valid until Sat Jun 23 04:55:

Enabling Grids for E-sciencE INFSO-RI voms-proxy-init in the background User enters pass phrase, which is used to decrypt private key. New private and new public key-pair generated and saved into proxy file Original private key is used to sign the proxy file –User’s private key not exposed after proxy has been signed User certificate file Private Key (Encrypted) Pass Phrase User Proxy certificate file Proxy file saved in /t m p –the private key part of the Proxy is not encrypted: –proxy lifetime is short (typically 12 h) to minimize security risks. NOTE: No network traffic during proxy creation!

Enabling Grids for E-sciencE INFSO-RI Proxy in action Site A Site B Site C Computing Element User Single sign-on via “grid-id” & generation of proxy cred. Broker Proxy credential Computing Element Storage Element GSI-enabled FTP server Authorize Map to local id Access file Remote file access request* GSI-enabled server GSI-enabled server * With mutual authentication Remote process creation requests* Process Proxy credential Authorize Map to a local id Create process Generate credentials Process Proxy credential Ditto Remote process creation requests*

Enabling Grids for E-sciencE INFSO-RI Logging out from the Grid: Destroying the proxy credential voms-proxy-init ≡ “login to the Grid” To “logout” you have to destroy your proxy: – voms-proxy-destroy –This does NOT destroy any proxies that were delegated from this proxy. –You cannot revoke a remote proxy –Usually create proxies with short lifetimes To gather information about your proxy: – voms-proxy-info –Options for printing proxy information -subject-issuer -type -timeleft -strength-help

Enabling Grids for E-sciencE INFSO-RI voms-proxy-init in the background 2 VOMS: VO Management Service –VO level service –Database of user roles voms-proxy-init –Creates a proxy locally –Contacts the VOMS server and extends the proxy with a role voms-proxy-init –voms gilda Allows VOs to centrally manage user roles Proxy Proxy + VOMS roles

Enabling Grids for E-sciencE INFSO-RI Controlling user rights: Virtual Organization Membership Service Before VOMS All VO members have same rights Grid user identities are mapped onto local user accounts statically User is authorised as a member of a single VO (no aggregation of roles) grid-proxy-init VOMS VO can have groups –Different rights for each  Different groups of experimentalists  … –Nested groups VOMS has roles –Assigned to specific purposes  E,g. system admin  When assume this role User can be in multiple VOs –Aggregate roles Proxy certificate carries the additional attributes voms-proxy-init

Enabling Grids for E-sciencE INFSO-RI Controlling user rights on sites: Pool accounts Grid site Local user pool 1 Local user pool 2 Local user pool 3 Proxy + VOMS role Students Researchers VO administrators VOMS role: administrator Map grid request to a local UNIX user from pool 3 The grid user can perform those actions on the site that any user account from pool 3 is allowed to

Enabling Grids for E-sciencE INFSO-RI gLite AA Summary Authentication –User obtains certificate from Certificate Authority –Connects to UI by ssh and uploads certificate to UI or Login to a portal and use MyProxy –Single logon to the Grid - create proxy –then Grid Security Infrastructure uses proxies Authorisation –User joins Virtual Organisation –VO manager updates VOMS DB –Capabilities added to proxy by VOMS UI CA VO mgr Annually VO database GSI VOMS Once

Enabling Grids for E-sciencE INFSO-RI User Responsibilities 2. Do not launch a delegation service for longer than your current task needs. If your certificate or delegated service is used by someone other than you, it cannot be proven that it was not you.

Enabling Grids for E-sciencE INFSO-RI MyProxy server You may need: –To interact with a grid from many machines  And you realise that you must NOT, EVER leave your certificate where anyone can find and use it…. Solution: you can store a proxy in a “MyProxy server” and derive a proxy certificate when needed MyProxy ~ storage server for proxy files

Enabling Grids for E-sciencE INFSO-RI MyProxy example UI MyProxy Server (myproxy-init) any grid service myproxy-get-delegation the Grid Portal WEB Browser Certificate Private key Proxy myproxy-get- delegation Proxy

Enabling Grids for E-sciencE INFSO-RI Summary - To become an EGEE user Obtain a certificate from a recognized CA: –  1 year long, renewable certificates, accepted in every EGEE VOwww.gridpma.org Find and register at a VO –EGEE NA4 - CIC Operations portal: Use the grid: –command line clients installed on the User Interface (UI is mainaned by the VO / your institute / you)  voms-proxy-init –voms VONAME  voms-proxy-destroy –Use third party clients  Might be satisfied with voms-proxy-init or require MyProxy –Use programming APIs to interact with gLite services  E.g. gfal for data management  later today

INFSO-RI Enabling Grids for E-sciencE Thank you! Questions?