Title: Notions de scurit sur la grille Emmanuel Medernach Yannick Legr CNRSIN2P3
1Notions de sécurité sur la grille Emmanuel
Medernach Yannick Legré (CNRS/IN2P3)
Présentation faite à partir des transparents de
Sophie Nicoud (CNRS/UREC)
EGEE is a project funded by the European Union
under contract IST-2003-508833
2Plan
- Le compte utilisateur
- Architecture
- Authentification
- Autorisation
- Mode demploi pour la France
- Côté utilisateur
- Obtenir un certificat
- Faire partie dune Organisation Virtuelle
- Côté serveur
- Certificats dhôtes et de services
- Développements à venir
- VOMS
3Un compte utilisateur
- Un utilisateur pour utiliser la grille doit
posséder - Un certificat X509 personnel
- Une entrée dans une Organisation Virtuelle (VO)
- Un compte sur une (au moins) Interface
Utilisateur (UI)
4Authentification/Autorisation
- Authentification gt Certificat
- Qui est qui ?
- Autorisation gt VO
- Qui a le droit ?
- Accès au GRID gt UI
- Audit sécurité
- QUI fait QUOI et QUAND ?
- Comptabilité
- COMBIEN de ressources consomme Mr X ou la VO Y ?
- Facturation possible
- -(
5Architecture
6Authentification
- Quest quun certificat X509 ?
- Un couple de clés indissociables
- Les clés son générées ensembles
- Le certificat est accrédité par un tiers de
confiance (CA) - Le certificat a une période de validité
- Repose sur lutilisation des algorithmes
asymétriques - Impossibilité de retrouver une clé par rapport à
lautre - Une clé est dite publique
- Elle est publiée sur le réseau
- Cette clé est signée par lAutorité de
Certification émettrice - Dans le langage courant, elle est appelée
certificat - Lautre est dite privée
- Elle est conservée sur le poste de lutilisateur
- Protégée par un mot de passe
7Un certificat
- Informations importantes
- Le sujet ou DN du certificat
- Le numéro de série du certificat
- La période de validité du certificat
- LAutorité de Certification émettrice
- La Liste des Certificats Révoqués (CRL) émise par
la CA
Certificate Data Version 3 (0x2)
Serial Number 639 (0x27f)
Signature Algorithm md5WithRSAEncryption
Issuer CFR, OCNRS, CNDatagrid-fr
Validity Not Before Mar 1 085249
2004 GMT Not After Mar 1 085249
2005 GMT Subject CFR, OCNRS, OUUREC,
CNSophie Nicoud, emailadressSophie.Nicoud_at_urec.c
nrs.fr Subject Public Key Info
Public Key Algorithm rsaEncryption
RSA Public Key (1024 bit)
Modulus (1024 bit)
00e6a28b5ca3edfed50355b67ccb44
.... Netscape Comment
Certificat Datagrid-fr. Pour toute information se
reporter à http//igc.services.cnrs.fr/Datagrid-fr
/ X509v3 CRL Distribution Points
URIhttp//igc.services.cnrs.fr/cgi-bin/l
oad.crl?CADatagrid-frformatDER Signature
Algorithm md5WithRSAEncryption
9dd819323e39f15558d6dd217a403136f6
07 9691cf2c
8Les Autorités de Certification
- Problématique
- Une seule CA pour le projet gt Pas gérable, peu
sûr - Une CA par partenaire gt Problème de mise à
léchelle - Solution
- Une CA par pays
- gt Établir des relations de confiance entre
chaque CA - gt Coordination au niveau du pays
- Catch-All CAs
- Pays sans CA nationale
- Création dun groupe des CAs
- EDG CACG
- Projets de GRID en Europe (EGEE, LCG, SEE-GRID,
) EUGridPMA
9EUGridPMAEUropean Grid Policy Management
Authority
- Domaine de confiance commun en Europe EUGridPMA
- Même règles et pratiques de certification
- Certificats valides 1 an
- Vérification de lidentité de la personne
-
- 28 Autorités de Certification nationales
- France, Espagne, US, ., Estonie, Russie,
- Catch-All CAs
- LCG ou instituts HEP DOE (US)
- EGEE ou instituts non HEP CNRS (France)
- http//marianne.in2p3.fr/datagrid/ca/ca-table-ca.h
tml - http//lcg-registrar.cern.ch/pki_certificates.html
- Les certificats sont valables sur lensemble des
projets de grille au travers de lEurope
10Autorisation
- Organisation Virtuelle (VO)
- Ensemble dindividus ayant des buts communs
- Utilisateurs
- Ressources
A set of individuals or organisations, not under
single hierarchical control, (temporarily)
joining forces to solve a particular problem at
hand, bringing to the collaboration a subset of
their resources, sharing those at their
discretion and each under their own conditions.
11Organisations Virtuelles (1/3)
- Les utilisateurs sont regroupés par expérience
scientifique - Sciences du vivant Biomed,
- HEP Alice, Atlas, Babar, CMS, D0, LHCb,
- Observation de la Terre ESR, EGEODE,
- Autre DTEAM, NA4Test,
- http//lcg-registrar.cern.ch/virtual_organization.
html - Les autorisations sont fonction de lOrganisation
Virtuelle - Un administrateur par Organisation Virtuelle
- Cest le gestionnaire des utilisateurs de sa VO
- Les ressources se déclarent utilisables par X,Y
ou Z Vos - Des droits spécifiques peuvent être données au
niveau de chaque ressources par ladministrateur
de celle-ci
VO
VO
12Organisations Virtuelles (2/3)
Anonyme
Administrateur
13Organisations Virtuelles (3/3)
Fichier LDIF LDAP Data Interchange Format
Email de demande dajout dans la VO
14Mode demploi
- Obtenir un certificat personnel
- http//igc.services.cnrs.fr/Datagrid-fr
- Senregistrer auprès dune VO et
- Accepter les règles dutilisation du GRID
- https//lcg-registrar.cern.ch/cgi-bin/register/acc
ount.pl - Attendre 24 heures pour la propagation des
droits - Exporter et convertir son certificat
- du format PKCS12 au format PEM
- Le mettre en place sur lUI
- Générer un GRID proxy
- La grille est à vous
15Demande de Certificate
16Certificat signé
17Enregistrement, règles dutilisation
18Démarrer une session
http//marianne.in2p3.fr/datagrid/ca/ca-help.html/
19Certificat proxy
- openssl x509 in /tmp/x509up_uid -u -text
- Data ...
- Issuer OGrid, OCERN, OUcern.ch,
CNAkos Frohner émetteur est lutilisateur - Validity
- Not Before Jul 22 094439 2002
GMT Validité réduite 1 jour - Not After Jul 22 214939 2002 GMT
- Subject OGrid, OCERN, OUcern.ch,
CNAkos Frohner, CNproxy - Subject Public Key Info
- Public Key Algorithm rsaEncryption
- RSA Public Key (512 bit) Nouvelle
clé (courte) - Modulus (512 bit)
- 00e97cf4d05d8a4c918b
dfa716781f ... - Exponent 65537 (0x10001)
- X509v3 extensions ... Même
extensions - Signature Algorithm md5WithRSAEncryption
... Signé par lutilisateur
Champs supplémentaire proxy
20Demande de certificat serveur
21Certificat serveur signé
22Configuration du serveur
23Configuration des CAs acceptées
- Le certificat et la clé privée de lhôte se
trouvent - /etc/grid-security/certificates
- hostcert.pem
- hostkey.pem
- Les CAs reconnues par lhôte se trouvent
- /etc/grid-security/certificates
- Certificats des CAs
- CRLs des CAs
- Installer le script de mise à jour automatique
des CRLs - http//marianne.in2p3.fr/datagrid/ca/ca-table.html
24Serveur Certificats
- ls /etc/grid-security/certificates
- 0ed6468a.0 c35c1972.0
d64ccb53.0 - 0ed6468a.crl_url c35c1972.crl_url
d64ccb53.crl_url - 0ed6468a.r0 c35c1972.r0
d64ccb53.r0 - 0ed6468a.signing_policy c35c1972.signing_policy
d64ccb53.signing_policy - 16da7552.0 cf4ba8c8.0
df312a4e.0 - 16da7552.crl_url cf4ba8c8.crl_url
df312a4e.crl_url - 16da7552.r0 cf4ba8c8.r0
df312a4e.r0 - 16da7552.signing_policy cf4ba8c8.signing_policy df
312a4e.signing_policy - cat c35c1972.crl_url
- http//globus.home.cern.ch/globus/ca/cern.crl.pem
25Serveur Certificats
- cat c35c1972.signing_policy
- EACL CERN CA
- access_id_CA X509 '/CCH/OCERN/CNCERN CA'
- pos_rights globus CAsign
- cond_subjects globus '"/Cch/OCERN/"
"/CCH/OCERN/" "/OGrid/OCERN/"
"/OCERN/OGrid/" - openssl x509 -in c35c1972.0 text -noout
- Issuer CCH, OCERN, CNCERN
CA ... Emetteur du certificat - Subject CCH, OCERN, CNCERN CA ...
Certificat auto-signé - X509v3 extensions
- X509v3 Basic Constraints critical
- CATRUE ... Ce
certificat peut être utilisé pour en signer
dautres - Netscape Cert Type
- SSL CA, S/MIME CA, Object Signing
CA Cest un certificat de CA
26Serveur CRL
- openssl crl -in c35c1972.r0 text -noout
- Certificate Revocation List (CRL)
- Version 1 (0x0)
- Signature Algorithm md5WithRSAEncryption
- Issuer /CCH/OCERN/CNCERN CA Emetteur
est la CA elle-même - Last Update Jul 1 175317 2002 GMT
- Next Update Aug 5 175317 2002
GMT Prochaine mise à jour - Revoked Certificates
- Serial Number 5A Numéros de série des
certificats révoqués - Revocation Date May 24 164552 2002 GMT
- Signature Algorithm md5WithRSAEncryption Sign
ature
27Autorisation
Mise à jour automatique toutes les 24h
28Gridmapfile configuration
- Installer et configurer le script de mise à jour
automatique du gridmapfile (mkgridmap.conf) - http//marianne.in2p3.fr/datagrid/ca/ca-table.html
- cat /etc/grid-security/mkgridmap.conf
- auth ldap//marianne.in2p3.fr/ouPeople,otestbed,
dceu-datagrid,dcorg - EDG Standard Virtual Organizations
- group ldap//grid-vo.nikhef.nl/outestbed1,oalice
,dceu-datagrid,dcorg .alice - group ldap//grid-vo.nikhef.nl/outestbed1,oatlas
,dceu-datagrid,dcorg .atlas - group ldap//grid-vo.nikhef.nl/outb1users,ocms,d
ceu-datagrid,dcorg .cms - group ldap//grid-vo.nikhef.nl/outb1users,olhcb,
dceu-datagrid,dcorg .lhcb - group ldap//grid-vo.nikhef.nl/outb1users,obiome
dical,dceu-datagrid,dcorg .biome - group ldap//grid-vo.nikhef.nl/outb1users,oearth
ob,dceu-datagrid,dcorg .eo - group ldap//marianne.in2p3.fr/ouITeam,otestbed,
dceu-datagrid,dcorg .iteam - group ldap//marianne.in2p3.fr/ouwp6,otestbed,dc
eu-datagrid,dcorg .wpsix
29Gridmap file
- cat /etc/grid-security/gridmap
- "/OGrid/OGlobus/OUcern.ch/CNGeza Odor" .atlas
- "/OGrid/OCERN/OUcern.ch/CNPietro Paolo
Martucci" .dteam - "/CIT/OINFN/LBologna/CNFranco
Semeria/EmailFranco.Semeria_at_bo.infn.it" .alice - "/CIT/OINFN/LBologna/CNMarisa
Luvisetto/EmailMarisa.Luvisetto_at_bo.infn.it"
.alice - "/OGrid/OCERN/OUcern.ch/CNBob Jones" .dteam
- "/OGrid/OCERN/OUcern.ch/CNBrian Tierney"
.dteam - "/OGrid/OCERN/OUcern.ch/CNTofigh Azemoon"
.lhcb - "/CFR/OCNRS/OULPC/CNYannick
Legre/Emaillegre_at_clermont.in2p3.fr" .biome
30Utilisation
Authentification mutuelle vérification des
autorisations
31VOMS
fréquemment
occasionnellement
Cert. Serveur(1 an max)
Service
Interface Utilisateur
Cert. CA
Cert. Utilisateur(1 an max)
MaJ CRL
enregistrement
VOMS
enregistrement
VOMS
voms-proxy-init
VOMS
Délégation de cert.(24 h max)
Délégation de cert.(24 h max)
Autorisation Cert.
Autorisation Cert.
Authentification mutuelle et autorisation
LCASLCMAPS
edg-java-security
32Obtenir des autorisations
davidg_at_tbn01 davidg edg-voms-proxy-info
-all Type proxy Bits
512 Valid From Jun 2 062202 2004
GMT Validity left Jun 2 182702 2004 GMT VO
wpsix Holder Subject
/Odutchgrid/Onikhef/CNDavid Groep Issuer
Subject/CFR/OCNRS/OUUREC/
CNvo-iteam.datagrid.cnrs.fr Valid from
Jun 2 062609 2004 GMT Valid to Jun 2
182609 2004 GMT Attribute
/wpsix/RoleNULL/CapabilityNULL
Notion de rôle
davidg_at_tbn01 davidg edg-voms-proxy-init
-vomswpsix Your identity /Odutchgrid/Ousers/O
nikhef/CNDavid Groep Enter GRID pass phrase for
this identity Creating temporary proxy
...............................
Done /CFR/OCNRS/OUUREC/CNvo-iteam.datagrid.cnr
s.fr/Emailedg-site-admin_at_datagrid.cnrs.fr /CFR/O
CNRS/CNDatagrid-fr Creating proxy
.............................. Done
33Interprétation des droits par le serveur
- Local Centre Authorization Service (LCAS)
- Prend en charge les demandes dautorisation
- Autorisations basées sur les proxys des
utilisateurs et la spécification de leurs jobs - Supporte le gridmap file
- Local Credential Mapping Service (LCMAPS)
- Langage simple de configuration des règles
- Basé sur lidentité de lutilisateur, sa VOMS, la
politique de sécurité du site
"/Odutchgrid/Ousers/Osara/CNWalter de Jong"
.wpsix "/Odutchgrid/Ousers/Ouva/OUwins
/CNRobert Belleman" .pvier "/VOiteam/GROUP/itea
m" .iteam "/VObiomed/GROUP/biomed" .biome