La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Authorization and Authentication in gLite

Presentazioni simili


Presentazione sul tema: "Authorization and Authentication in gLite"— Transcript della presentazione:

1 Authorization and Authentication in gLite
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) Annamaria Muoio– INFN Catania Catania, Ottobre 2008

2 Outline Glossary Certificates Certification Authorities
X509 certificates Grid Security Basic concepts Grid Security Infrastructure Proxy certificates single sign-on delegation Commands used in UI Virtual Organization Concept of VO and authorization VOMS, LCAS, LCMAPS References Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

3 Glossary Principal An entity: a user, a program, or a machine
Credentials Some data providing a proof of identity Authentication Verification of the identity for an end-entity Authorization Map an entity to some set of privileges Confidentiality Encrypt the message so that only the recipient can understand it Integrity Ensure that the message has not been altered during the transmission Non-repudiation Impossibility of denying the authenticity of a digital signature Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

4 The “third party” is called Certification Authority (CA).
X.509 and Certification Authorities The “third party” is called Certification Authority (CA). Responsibilities of CA: Issue Digital Certificates (containing public key and owner’s identity) for users, programs and machines Check identity and the personal data of the requestor Registration Authorities (RAs) do the actual validation Revoke certificates in case of a compromise Renew certificates in case of expiration Periodically publish a list of revoked certificates through web repository Certificate Revocation Lists (CRL): contain all the revoked certificates CA certificates are self-signed Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

5 identity of the owner (DN); info on the CA; time of validity;
X.509 Certificates An X.509 Certificate contains: owner’s public key; identity of the owner (DN); info on the CA; time of validity; Serial number; digital signature of the CA Structure of a X.509 certificate Public key Subject:C=TR, O=TRGrid, OU=ODTU, CN=Cevat Sener Issuer: C=TR, O=TRGrid, CN=TR-Grid CA Not before: Apr 6 14:08: GMT Not after: Apr 6 14:08: GMT Serial number: 95 (0 x 5F) CA Digital signature Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

6 Private keys must be stored only by
The Grid Security Infrastructure (GSI) Based on X.509 PKI: every user/host/service has an X.509 certificate; certificates are signed by trusted (by the local sites) CA’s; every Grid transaction is mutually authenticated: John sends his certificate; Peter verifies signature in John’s certificate; Peter sends John a challenge string; John encrypts the challenge string with his private key; John sends encrypted challenge to Peter Peter uses John’s public key to decrypt the challenge. Peter compares the decrypted string with the original challenge If they match, Peter verifies John’s identity and John can not repudiate it. John Peter VERY IMPORTANT Private keys must be stored only by owners: in protected places AND in encrypted form John’s certificate Verify CA signature Random phrase Encrypt with John’s private key Encrypted phrase Decrypt with John’ s public key Compare with original phrase Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

7 More on Authentication
• In the grid world one single CA usually covers a predefined geographic region or administrative domain: – Organization – Country – A set of countries • A common trust domain for grid computing has been created to join the several existing certification authorities into a single authentication domain and thus enabling sharing of grid resources worldwide. – The International Grid Trust Federation (IGTF) has been created to coordinate and manage this trust domain. – IGTF is divided in three Policy Management Authorities (PMAs) covering the Asia Pacific, Europe and Americas. Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

8 Classic Profile of a CA A network of subordinated RAs is necessary to perform the identity verification of the subjects • The RAs will be created at the level of the organizations or at the level of departments: – Operating at university or research centre wide level (more difficult) – Operating at the level of a department or group – The CA can also operate an RA but don’t forget that the physical presence of the subject is required for identity verification – It is fine to have more than one RA per university or research centre if they are operating for different departments • The RAs should be created only upon request, their creation should be user driven. Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

9 Classic profile of a CA How to obtain a certificate:
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

10 Revocation Lists The CAs have the obligation of issue Certificate Revocation Lists (CRL) • The CRLs contain: – a list of the revoked certificates – the date when they were issued – the end date • CRLs are signed with the CA private key • The CRLs must be published so that the relying parties can check the validity of the certificates – Usually available through Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

11 Steps for different browsers
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

12 RA di COMETA Authentication in PI2S2
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

13 Download Certificate INFN (1/3)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

14 Request certificate INFN (2/3)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

15 Request certificate INFN (3/3)
An will arrive with specific address in the form Da: INFN CA To: < specificata nel form di richiesta> Subject: [INFN CA #xyz] Certificato per <UTENTE> Spettabile Utente, il certificato da lei richiesto e' pronto. Per completare la procedura, deve aprire l'indirizzo qui sotto con lo *stesso* browser con cui ha fatto la richiesta: Mi permetto di ricordarle quanto segue: - e' fondamentale che il browser che usera' sia _lo stesso_ utilizzato per la richiesta; - una volta che il certificato sia stato scaricato, potra' essere esportato e importato in altri browser (per maggiori informazioni sulla procedura, la prego di guardare in - la prego di fare immediatamente delle copie di salvataggio, da conservare, opportunamente protette, su floppy o chiave usb. - messaggio di errore; - nome nodo da cui e' stata fatta la richiesta; - giorno e ora del tentativo; - modello e versione del browser utilizzato. La prego inoltre di leggere la Certification Policy e il CPS di questa CA, disponibile in Saluti -- INFN CA - INFN Certification Authority Tel: Via G. Sansone 1, I Sesto Fiorentino Si segua il link per scaricare il certificato Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

16 Export certificate from browser: IE
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

17 Export certificate from IE (1/8)
Attention during all the steps you have to use the same web browser used for the request! You have export the certificate to use it on Grid and place it in a sure directory The file’s extension is *.pfx for Internet Explorer. To follow menù Strumenti -> Opzioni Internet -> Contenuto -> Certificati Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

18 Export certificate from IE (2/8)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

19 Export certificate from IE (3/8)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

20 Export certificate from IE (4/8)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

21 Export certificate from IE (5/8)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

22 Export certificate from IE (6/8)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

23 Export certificate from IE (7/8)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

24 Export certificate from IE (8/8)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

25 Export certificate from browser: Mozilla/Firefox
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

26 Export certificate from Firefox (1/6)
Attention during all the steps you have to use the same web browser used for the request! You have export the certificate to use it on Grid and place it in a sure directory The file’s extension is *.pfx for Internet Explorer. To follow menù Strumenti -> Opzioni Internet -> Contenuto -> Certificati Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

27 Export certificate from Firefox (2/6)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

28 Export certificate from Firefox (3/6)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

29 Export certificate from Firefox (4/6)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

30 Export certificate from Firefox (5/6)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

31 Export certificate from Firefox (6/6)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

32 Revocation certificate COMETA
The revocation certificate must be advanced to the RA and it is be able to forward it to INFN CA. The user will be informed via - or he can consult the state of own certificate to URL: Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

33 Revocation certificate COMETA
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

34 GENIUS web portal Grid Enabled web eNvironment for site Independent
The GENIUS GENIUS Grid Enabled web eNvironment for site Independent User job Submission INFN / NICE Collaboration GENIUS web portal OS & Net services Basic Services High level GRID middleware ALICE ATLAS CMS LHCb Applications’ specific layer Other apps GLOBUS toolkit EGEE (LCG/gLite) architecture Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA 39 39

35 GENIUS Grid Portal Reference Web Site: https://infn-ui-01.ct.infn.it
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA 40

36 VOMS PROXY INIT SERVICE
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

37 VOMS PROXY INIT SERVICE
A CAPTCHA Code is required to start the VOMS Proxy Applet for the proxy initialization Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

38 Jointly developed by NICE and INFN Catania
VOMS PROXY INIT SERVICE Jointly developed by NICE and INFN Catania Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

39 VOMS PROXY INIT SERVICE
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

40 VOMS PROXY INIT SERVICE
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

41 VOMS PROXY INIT SERVICE
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

42 VOMS PROXY INIT SERVICE
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

43 acceptance of VO’s rules
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

44 Users “Groups” Grid Sites GRID Security: Components
Large and dynamic population Different accounts at different sites Personal and confidential data Heterogeneous privileges (roles) Desire Single Sign-On Users “Group” data Access Patterns Membership “Groups” Grid Sites Heterogeneous Resources Access Patterns Local policies Membership Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

45 Accept of Rules (http://www.consorzio-cometa.it/pi2s2/tc/regole.php)
Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

46 Registration to VO COMETA
With the certificate installed on the browser, to open the URL Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

47 Certificate on the UI Copy your certificate .p12 o .pfx on the UI
Create a directory .globus: $ mkdir .globus To follow the command line to convert the certificate from .p12 to .pem: $ openssl pkcs12 -clcerts -nokeys -in <your cert> -out usercert.pem $ openssl pkcs12 -nocerts -in <your cert> -out userkey.pem Change the permission to public key : usercert.pem $ chmod 644 usercert.pem Change the permission to private key: userkey.pem $ chmod 400 userkey.pem Move the files usercert.pem e userkey.pem in the directory .globus: $ mv usercert.pem userkey.pem $HOME/.globus/ Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

48 grid-proxy-init User certificate file Private Key (Encrypted) Pass
User enters pass phrase, which is used to decrypt private key. Private key is used to sign a proxy certificate with its own, new public/private key pair. User’s private key not exposed after proxy has been signed User certificate file Private Key (Encrypted) Pass Phrase User Proxy Proxy placed in /tmp the private key of the Proxy is not encrypted: stored in local file: must be readable only by the owner; proxy lifetime is short (typically 12 h) to minimize security risks. NOTE: No network traffic! Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

49 Modalità di accesso a Cometa
Vi sono 2 modalità di accesso all'infrastruttura di Cometa come membri della VO trigrid: 1) Accesso mediante SSH da IP statico alla User Interface (UI) di Catania Serve Comunicare l’IP dal quale si intende accedere. 2) Accesso mediante UI virtuale: 3) Via web – genius Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

50 Delegation Delegation = remote creation of a (second level) proxy credential New key pair generated remotely on server Client signs proxy cert and returns it Allows remote process to authenticate on behalf of the user Remote process “impersonates” the user Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

51 Long term proxy --> Myproxy
Proxy has limited lifetime (default is 12 h) Bad idea to have longer proxy However, a grid task might need to use a proxy for much longer time Grid jobs in HEP on LCG last up to 2 days myproxy server: Allows to create and store a long term proxy certificate: myproxy-init -s <host_name> --voms <your_vo> -s: <host_name> specifies the hostname of the myproxy server myproxy-info Get information about stored long living proxy myproxy-get-delegation Get a new proxy from the MyProxy server myproxy-destroy Check out the myproxy-xxx --help option for more information A dedicated service on the RB can renew automatically the proxy File transfer services in gLite validates user request and eventually renew proxies contacting myproxy server Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

52 VOs and authorization Grid users MUST belong to virtual organizations
It was called “groups” previously. It defines sets of users belonging to a collaboration User must sign the usage guidelines for the VO You will be registered in the VO-LDAP server (wait for notification) List of supported VOs: VOs maintain a list of their members on a LDAP Server The list is downloaded by grid machines to map user certificate subjects to local “pool” accounts Sites decide which VOs to support /etc/grid-security/grid-mapfile "/C=TR/O=TRGrid/OU=TUBITAK-ULAKBIM/CN=Birsen Omay" .seegrid "/C=TR/O=TRGrid/OU=TUBITAK-ULAKBIM/CN=Hakan Bayindir" .trgridb "/C=TR/O=TRGrid/OU=TUBITAK-ULAKBIM/CN=Onur Temizsoylu" .dteam Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

53 Evolution of VO management
Before VOMS • User is authorised as a member of a single VO • All VO members have same rights • Gridmapfiles are updated by VO management software: map the user’s DN to a local account • grid-proxy-init – derivesproxy from certificate – the “single sign-on to the grid” VOMS User can be in multiple VOs Aggregate rights VO can have groups Different rights for each Different groups of experimentalists Nested groups VO has roles Assigned to specific purposes E,g. system admin When assume this role Proxy certificate carries the additional attributes voms-proxy-init Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

54 Registration process Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

55 COMETA VOMS (https://voms.ct.infn.it:8443/voms/gilda/)
New registrations at: Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

56 VOMS concepts Virtual Organization Membership Service Extends the proxy with info on VO membership, group, roles Fully compatible with Globus Toolkit Each VO has a database containing group membership, roles and capabilities information for each user User contacts voms server requesting his authorization info Server sends authorization info to the client, which includes them in a proxy certificate ~]$ voms-proxy-init --voms cometa Enter GRID pass phrase: Your identity: /C=IT/O=INFN/OU=Personal Certificate/L=Catania/CN=Riccardo Bruno Cannot find file or dir: /home/brunor/.glite/vomses Creating temporary proxy Done Contacting voms.ct.infn.it:15003 [/C=IT/O=INFN/OU=Host/L=Catania/CN=voms.ct.infn.it] "cometa" Done Creating proxy Done Your proxy is valid until Sat Oct 4 04:02: Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

57 FQAN and AC short for Fully Qualified Attribute Name, is what VOMS uses to express membership and other authorization info Groups membership, roles and capabilities may be expressed in a format that bounds them together <group>/Role=[<role>][/Capability=<capability>] FQAN are included in an Attribute Certificate Attribute Certificates are used to bind a set of attributes (like membership, roles, authorization info etc) with an identity ACs are digitally signed VOMS uses AC to include the attributes of a user in a proxy certificate ~]$ voms-proxy-info -fqan /cometa/Role=NULL/Capability=NULL /cometa/grelc/Role=NULL/Capability=NULL /cometa/grelc/das/Role=NULL/Capability=NULL /cometa/grelc/das/grelc02.unile.it/Role=NULL/Capability=NULL /cometa/grelc/das/grelc02.unile.it/sakila/Role=NULL/Capability=NULL /cometa/grelc/das/grid009.ct.infn.it/Role=NULL/Capability=NULL /cometa/grelc/das/grid009.ct.infn.it/sakila/Role=NULL/Capability=NULL Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

58 VOMS and AC Server creates and signs an AC containing the FQAN requested by the user, if applicable AC is included by the client in a well-defined, non critical, extension assuring compatibility with GT-based mechanism ~]$ voms-proxy-info -all subject : /C=IT/O=INFN/OU=Personal Certificate/L=Catania/CN=Riccardo Bruno/CN=proxy issuer : /C=IT/O=INFN/OU=Personal Certificate/L=Catania/CN=Riccardo Bruno identity : /C=IT/O=INFN/OU=Personal Certificate/L=Catania/CN=Riccardo Bruno type : proxy strength : 512 bits path : /tmp/x509up_u509 timeleft : 11:57:56 === VO cometa extension information === VO : cometa subject : /C=IT/O=INFN/OU=Personal Certificate/L=Catania/CN=Riccardo Bruno issuer : /C=IT/O=INFN/OU=Host/L=Catania/CN=voms.ct.infn.it attribute : /cometa/Role=NULL/Capability=NULL attribute : /cometa/grelc/Role=NULL/Capability=NULL attribute : /cometa/grelc/das/Role=NULL/Capability=NULL attribute : /cometa/grelc/das/grelc02.unile.it/Role=NULL/Capability=NULL attribute : /cometa/grelc/das/grelc02.unile.it/sakila/Role=NULL/Capability=NULL attribute : /cometa/grelc/das/grid009.ct.infn.it/Role=NULL/Capability=NULL attribute : /cometa/grelc/das/grid009.ct.infn.it/sakila/Role=NULL/Capability=NULL Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

59 Groups The number of users of a VO can be very high:
– E.g. the experiment ATLAS has 2000 member • Make VO manageable by organizing users in groups: Examples: – VO GILDA Group Catania • INFN Group Barbera • University Group Padua  /GILDA/TUTORS can write to normal storage  /GILDA/STUDENT only write to volatile space Groups can have a hierarchical structure, indefinitely deep Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

60 Roles Roles are specific features that an user has and that distinguishes him from others in his group: – Software manager – VO-Administrator • Difference between roles and groups: – Roles have no hierarchical structure – there is no sub-role – Roles are not used in ‘normal operation’  They are not added to the proxy by default when running vomsproxy-init  But they can be added to the proxy for special purposes when running voms-proxy-init • Example: – User Emidio has the following membership  VO=gilda, Group=tutors, Role=SoftwareManager – During normal operation the role is not taken into account, e.g. Emidio can work as a normal user – For special things he can obtain the role “Software Manager” he has to explicitly request with the appropriate option to command Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

61 LCAS & LCMAPS At resources level, authorization info is extracted from the proxy and processed by LCAS and LCMAPS Local Centre Authorization Service (LCAS) Checks if the user is authorized (currently using the grid-mapfile) Checks if the user is banned at the site Checks if at that time the site accepts jobs Local Credential Mapping Service (LCMAPS) Maps grid credentials to local credentials (eg. UNIX uid/gid, AFS tokens, etc.) Map also VOMS group and roles (full support of FQAN) Both LCAS and LCMAPS are based on ACL’s which translates VOMS extensions to pool of users "/VO=dteam/GROUP=/dteam" dteam "/VO=eumed/GROUP=/eumed/ROLE=SoftwareManager" eumed "/VO=eumed/GROUP=/eumed" eumed Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

62 GSI environment variables
User certificate files: Certificate: X509_USER_CERT (default: $HOME/.globus/usercert.pem) Private key: X509_USER_KEY (default: $HOME/.globus/userkey.pem) Proxy: X509_USER_PROXY (default: /tmp/x509up_u<id>) Host certificate files: Certificate: X509_HOST_CERT (default: /etc/grid-security/hostcert.pem) Private key: X509_HOST_KEY (default: /etc/grid-security/hostkey.pem) Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

63 GSI environment variables
Trusted certification authority certificates: X509_CERT_DIR (default: /etc/grid-security/certificates) Voms server public keys X509_VOMS_DIR (default: /etc/grid-security/vomsdir) Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA

64 References Grid Background
LCG Security: LCG Registration: Globus Security: VOMS: IGTF for trusted CAs: CA: Background GGF Security: IETF PKIX charter: PKCS: Corso di formazione sul Calcolo Parallelo ad Alte Prestazioni (edizione 2008) - CATANIA


Scaricare ppt "Authorization and Authentication in gLite"

Presentazioni simili


Annunci Google