Introduction ============ L'intergiciel (*middleware*) utilisé par le service de calcul à haut débit (HTC) de la plateforme SCIGNE repose sur un ensemble d'outils utilisant un certficat X509 pour s'authentifier auprès des différents services (calcul, stockage), et reposant sur le `Grid Community Toolkit `_. Ce certificat permet de simplifier et de sécuriser l'authentification aux différentes ressources constituant la grille de calcul internationale. Ce document détaille l'obtention et la gestion de ce certificat dans le cadre de l'utilisation des ressources du service HTC, que ce soit celle de la plateforme SCIGNE ou des infrastructures `EGI `_ et `WLCG `_. Les certificats électroniques ============================= Le certificat électronique est une carte d'identité numérique qui permet : - d'indiquer la qualité du possesseur du certificat (utilisateur, service ou machine) et la limite de validité des informations contenues ; - de s'authentifier et d'obtenir un certain nombre de privilèges sur un ensemble de services de la grille ; - d'assurer la confidentialité des échanges grâce au chiffrement des données ; - d'assurer la non-répudiation et l'intégrité des données grâce à la signature numérique. Le certificat est délivré par une autorité de certification qui fait foi de tiers de confiance. Pour les personnels issus des établissements français (CEA, CNRS, INRA, INRIA, INSERM, Universités, ...), les certificats sont émis par `TCS `_. Chaque établissement a une manière spécifique de les délivrer : * En passant directement par le portail Renater * En mettant en place un portail dédié Le CNRS dispose d'un portail dédié : `SESAME `_. Obtention d'un certificat utilisateur ===================================== Pour obtenir un certificat utilisable avec le service de calcul à haut débit, deux étapes sont nécessaires. Tout d'abord, il faut en faire la demande auprès de l'autorité de certification, puis il faut s'enregistrer avec le certificat délivré auprès de l'organisation virtuelle (VO) ``vo.scigne.fr``. Demande de certificat --------------------- L'obtention d'un certificat CNRS n'est possible que pour les agents ayant un identifiant JANUS pointant vers une adresse e-mail dans un domaine géré par le CNRS. Si ce n'est pas le cas, il faut passer par la tutelle à qui appartient le nom de domaine. Par exemple, pour le personnel dont l'adresse est du type *prenom.nom@unistra.fr*, le nom de domaine est géré par l'Université de Strasbourg, il faut alors contacter l'Université pour obtenir un certificat. Pour obtenir un certificat CNRS, il faut suivre les étapes suivantes : 1. Se connecter au portail SESAME : https://sesame.cnrs.fr/. 2. Cliquer sur la zone "Gérer mes certificats". 3. S'identifier à l'aide de vos identifiants CNRS. Pour cela, il faut sélectionner "CNRS - Personnels des unités" et passer à l'étape suivante. Il vous est alors demandé de vous identifier avec vos identifiants Janus. 4. Commander un certificat en cliquant sur le bouton "Demander un nouveau certificat personnel". 5. Choisir un mot de passe robuste pour protéger le certificat (voir `Guide ANSSI`_). 6. Le certificat généré est ensuite automatiquement téléchargé sur votre ordinateur. Une fois que votre certificat a été récupéré, vous devez en assurer la sauvegarde et le séquestre. Il peut également être chargé dans le navigateur en suivant la procédure décrite dans la section `Gestion du certificat avec Firefox`_. Enregistrement auprès de la VO régionale ---------------------------------------- Afin de pouvoir effectuer des calculs sur la grille de la plateforme SCIGNE, il est nécessaire d'enregistrer votre certificat auprès de la VO ``vo.scigne.fr`` en vous rendant sur la `page d'enregistrement `_. L'enregistrement au sein de la VO permet de vous attribuer un ensemble de droits sur la grille régionale de calcul. Une fois le formulaire rempli, vous recevrez un message électronique vous demandant de confirmer votre demande. Il est important de répondre à ce message pour pouvoir rejoindre la VO régionale. Une fois que votre demande est validée, vous pouvez utiliser votre certificat pour accéder aux ressources de la grille régionale et effectuer des calculs. Enregistrement auprès d'autres VOs ---------------------------------- D'autres VOs sont disponibles et permettent d'accéder à des ressources de calcul et de stockage plus importantes. N'hésitez pas à contacter l'équipe support de la plateforme SCIGNE pour obtenir plus d'informations pour y accéder. Vous trouverez ci-dessous la liste des VOs supportées et le lien pour s'incrire : - ``alice`` : https://alice-auth.cern.ch/ ; - ``belle`` : https://voms.cc.kek.jp:8443/voms/belle ; - ``biomed`` : https://iam-biomed.ijclab.in2p3.fr ; - ``cms`` : https://cms-auth.cern.ch/ ; - ``vo.agata.org`` : https://iam-agata.ijclab.in2p3.fr/ ; - ``vo.complex-system.eu`` : https://voms2.hellasgrid.gr:8443/voms/vo.complex-systems.eu/register/start.action ; - ``vo.france-grilles.fr`` : https://iam.mesonet.fr. La liste globale des VOs existantes est disponible sur le `portail des VOs `_. Si vous souhaitez que la plateforme supporte d'autres VOs, n'hésitez pas à contacter `les administrateurs `_ ! Renouvellement du certificat ---------------------------- Chaque année, vous allez recevoir un message électronique vous invitant à renouveler votre certificat, deux mois avant son expiration. Cette étape est réalisée en se connectant sur le site indiqué dans le message. Le certificat renouvelé n'a pas besoin d'être ré-enregistré auprès de la VO régionale. Gestion du certificat avec Firefox ================================== Le certificat est utilisé avec votre navigateur pour accéder à des sites sécurisés. Cette section explique comment importer et exporter des certificats dans Firefox, que nous vous recommandons d'utiliser pour gérer votre certificat. La procédure peut varier légèrement en fonction de la version de Firefox que vous utilisez. Il est important de sauvegarder votre certificat afin de pouvoir le restaurer si vous devez réinstaller votre navigateur, ou si vous souhaitez l'utiliser avec d'autres logiciels (comme des outils d'accès au service HTC, un client de messagerie, etc.) Importer un certificat ---------------------- Pour importer votre certificat électronique vers Firefox, suivez les étapes suivantes. #. Allez dans le menu ``Édition > Paramètres`` puis sélectionner ``Vie privée et sécurité > Afficher les certificats``. #. Dans l'onglet *Vos certificat*, cliquez sur *Importer...*. #. Une fenêtre s'ouvre vous permettant de sélectionner le fichier à importer. Une fois que vous avez sélectionné le fichier contenant le certificat, une boîte de dialogue apparaît pour vous demander le *mot de passe principal de Sécurité personnelle*. #. Une nouvelle fenêtre apparaît vous demandant le mot de passe protégeant le certificat. Entrez le mot de passe et validez en appuyant sur le bouton *OK*. Une fenêtre vous informe alors que la récupération des certificats et clés privées est réussie. Exporter un certificat ---------------------- Pour exporter votre certificat électronique depuis Firefox, suivez les étapes ci-dessous. #. Allez dans le menu ``Édition > Paramètres`` puis sélectionner ``Vie privée et sécurité > Afficher les certificats``. #. Dans l'onglet *Vos certificats*, sélectionnez le certificat à sauvegarder, puis cliquez sur *Sauvegarder...*. #. Le logiciel demandera sous quel nom sera sauvegardé le certificat. Le certificat sera sauvegardé au format PKCS12 (extension ``.p12``). #. Une boîte de dialogue apparaît ensuite pour vous demander votre *mot de passe principal de Sécurité personnelle*, puis par deux fois le mot de passe pour protéger votre certificat. Il est important d'avoir un mot de passe robuste et de ne pas le perdre. #. Une fois que vous avez validé les mots de passe, Firefox sauvegarde votre certificat à l'endroit indiqué. Gestion du certificat en ligne de commande ========================================== L'utilisation des logiciels pour accéder à la grille de calcul (gestion des calculs et du stockage) nécessite un certificat électronique de type X509. Ce certificat se compose des fichiers ``userkey.pem`` (clé privée) et ``usercert.pem`` (clé publique) qui doivent être placés dans le répertoire ``$HOME/.globus``. Ils sont générés à partir du fichier PKCS12 sauvegardé depuis le navigateur en utilisant l'outil en ligne de commande ``openssl``. Dans l'exemple ci-dessous, nous supposons que le certificat a été enregistré sous le nom ``cert.p12``. La génération de la clé privée et de la clé publique est réalisée avec les commandes suivantes : .. code-block:: console $ openssl pkcs12 -nocerts -in cert.p12 -out ~/.globus/userkey.pem $ openssl pkcs12 -clcerts -nokeys -in cert.p12 -out ~/.globus/usercert.pem $ chmod 400 ~/.globus/userkey.pem $ chmod 400 ~/.globus/usercert.pem $ ls ~/.globus -r-------- 1 user group 1935 Feb 16 2010 usercert.pem -r-------- 1 user group 1920 Feb 16 2010 userkey.pem La commande ``chmod`` est utilisée pour restreindre l'accès aux certificats au seul utilisateur. Documentation complémentaire ============================ Les documentations suivantes peuvent être consultées pour approfondir le sujet : .. _Guide ANSSI: - `guide ANSSI pour générer un mot de passe robuste `_ ; - `article RENATER sur les certificats électroniques `_ ; - `article Wikipedia concernant les certificats électroniques `_ ; - `article RENATER présentant les certificats électroniques `_.