Changes between Version 10 and Version 11 of Tutorial/Authorization


Ignore:
Timestamp:
Feb 6, 2007, 5:15:44 PM (19 years ago)
Author:
manyong
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Tutorial/Authorization

    v10 v11  
    88=== Demande de certificat ===
    99
    10 On va utiliser la procédure normale pour obtenir un certificat. Les certificats
    11 pour cette formation ont une limite de validité de quelques jours. Normalement un
    12 certificat a une limite de validité d'un an et peut être renouvellé.
    13 
    14 
    15  1. Connectez-vous sur [http://igc.services.cnrs.fr/GRID-FR/certificats.html l'authorité de certification] CNRS pour la France.  '''N'utilisez pas le navigateur safari'''.
    16  1. Cliquez sur `Certificat personnel` à gauche de la page.
    17  1. Remplissez les données du premier formulaire. Pour le nom utilisez `EtudiantUn, ``EtudiantDeux'', etc. Utilisez votre propre prenom. Cliquez sur ``[suite]''. La procédure vérifie votre adresse électronique. Il est impératif que vous fournissiez une adresse valide et que vous puissiez accéder à votre boîte aux lettres à distance.
    18  1. Choisissez votre organisme, puis cliquez sur ``[suite]''. Indiquez CNRS\@.
    19 
    20 \item Choisissez votre laboratoire en consultant la liste, puis cliquez sur
    21 ``[suite]''. Indiquez le LAL\@.
    22 
    23 \item Un récapitulatif des informations apparaît.  Vérifiez que les
    24   informations sont correctes.  Si vous cliquez sur ``[suite]'', la
    25   demande est envoyée.
    26 
    27 \item L'authorité de certification envoie un message électronique à l'adresse
    28 que vous avez indiquée. Dans ce message il y a un lien que vous devez visiter
    29 pour valider votre demande. Si vous utilisez les filtres SPAM, vérifiez que ce
    30 message de confirmation n'est pas marqué comme SPAM\@.
    31 
    32 \item Une fois la demande acceptée, vous allez recevoir un deuxième
    33 message électronique contenant un lien à cliquer.  A
    34 l'ouverture de la page correspondante, votre certificat est importé
    35 dans votre navigateur.  \em{Vous devez ensuite utiliser le même navigateur que
    36 vous avez utilisé pour faire la demande}.
    37 
    38 \end{enumerate}
    39 
    40 \subsection{L'enregistrement dans une VO}
    41 
    42 L'accès aux ressources de la grille est contrôlé par des organisations
    43 virtuelles (VO). Il est nécessaire d'être membre d'au moins une VO\@. Une fois
    44 que vous avez votre certificat, il est nécessaire de contacter le ``VO Manager''
    45 d'une VO pour faire l'enregistrement.
    46 
    47 Le site du \htmladdnormallinkfoot{``CIC Operations
    48 Portal''}{https://cic.gridops.org/} contient les informations pour les VOs
    49 principales et le lien pour s'enregistrer dans ces VOs. Cette page ne contient pas
    50 toutes les VOs\@. Il peut être nécessaire de contacter quelqu'un de votre
    51 organisation pour connaître le serveur correct.
    52 
    53 Aujourd'hui, vous allez utiliser la VO ``\voname''.
    54 
    55 \begin{enumerate}
    56 
    57 \item Allez au serveur
    58   \htmladdnormallinkfoot{VOMS}{https://grid12.lal.in2p3.fr:8443/voms/\voname}
    59   pour la VO \voname   avec un navigateur sur lequel votre certificat est
    60   installé.
    61 
    62 \item Cliquez sur le lien ``New user registration'' dans la liste à
    63   gauche.
    64 
    65 \item Remplissez le formulaire et cliquez sur le bouton ``I have read
    66   and agree to the VO's Usage Rules''.
    67 
    68 \item Vous allez recevoir un message électronique pour confirmer votre adresse
    69 électronique. (Vérifiez encore que le message n'est pas marqué comme SPAM\@.)
    70 Cliquez sur l'URL de confirmation indiquée.
    71 
    72 \item Le ``VO Manager'' doit valider votre demande. Une fois
    73   la demande validée, vous allez recevoir un message électronique.
    74 
    75 \end{enumerate}
    76 
    77 \subsection{Exportation, installation et utilisation du certificat}
    78 
    79 Votre certificat est installé dans votre browser. Pour utiliser la grille, on
    80 doit extraire ce certificat et l'installer dans le ``User Interface'' \uimachine.
    81 
    82 \begin{enumerate}
    83 
    84 \item Utilisez la fonction ``export'' de votre navigateur pour faire
    85   une sauvegarde de votre certificat au format pkcs12 (fichier .p12).
    86 
    87 \begin{description}
    88 
    89 \item[Firefox] Sélectionnez le menu FireFox/Preferences\@. Cliquez sur
    90 ``Avancer'' à droite et l'onglet ``Chiffrement''. Cliquez sur le bouton ``Afficher les resultats...'',
    91 sélectionnez votre certificat et utilisez la fonction
    92 ``importer''.
    93 
    94 \item[Mozilla] Dans le menu Edit/Preferences allez dans l'onglet
    95 ``Privacy \& Security'' puis dans ``certificates''.  Cliquez sur
    96 ``Manage Certificates'', et utilisez la fonction ``backup''.
    97 
    98 \item[Netscape] Cliquez sur l'icône ``sécurité'' (ou passez par le
    99 menu Communicator/outils/Information sur la sécurité), puis cliquez
    100 sur le choix ``vos certificats''.
    101 
    102 \item[Internet Explorer] Dans le menu Outils/Options Internet, allez
    103 dans l'onglet ``contenu'' et cliquez sur ``certificats''.  Cliquez
    104 ensuite sur ``exporter''.
    105 
    106 \end{description}
    107 
    108 La procédure va demander un mot de passe pour sauvegarder votre certificat. Ne
    109 l'oubliez pas.
    110 
    111 \item Copiez votre certificat dans la machine \uimachine.  Remplacez
    112   \file{cert.p12} par le nom exact de votre certificat dans toutes
    113   les commandes suivantes. Il a peut-être une extension ``.pfx''.
    114 
    115 \begin{yexample}\begin{verbatim}
    116 scp cert.p12 etud01@grid11.lal.in2p3.fr:~/cert.p12
    117 \end{verbatim}\end{yexample}
    118 
    119 \item Connectez-vous via \cmd{ssh} sur \uimachine\ et
    120   créez, dans votre ``home directory'', le répertoire \file{.globus}.
    121   Descendez dans ce répertoire.
    122 
    123 \begin{yexample}\begin{verbatim}
    124 mkdir .globus
    125 cd .globus
    126 mv ~/cert.p12 .
    127 \end{verbatim}\end{yexample}
    128 
    129 \item Convertissez votre certificat au bon format et donnez-lui les bons
    130   droits.  Pour utiliser la grille, vous avez besoin de deux fichiers
    131   \file{usercert.pem} et \file{userkey.pem} qui contiennent votre clé
    132   publique et votre clé privée.
    133 
    134 \begin{yexample}\begin{verbatim}
    135 openssl pkcs12 -in cert.p12 -clcerts -nokeys -out usercert.pem
    136 openssl pkcs12 -in cert.p12 -nocerts -out userkey.pem
    137 \end{verbatim}\end{yexample}
    138 
    139 Ces commandes vont vous demander d'entrer le mot de passe que vous avez utilisé pour
    140 créer le fichier \file{cert.p12}.  Pour créer le fichier
    141 \file{userkey.pem}, la commande vous demande aussi de donner un nouveau mot de passe
    142 associé pour protéger le fichier.  Normalement on utilise le même mot de passe
    143 que pour le fichier \file{cert.p12}.
    144 
    145 \item Vérifiez que les fichiers disposent des bons droits.  Le fichier
    146   \file{userkey.pem} doit avoir les droits 0400; le fichier
    147   \file{usercert.pem} doit avoir les droits 0444.  Changez les droits
    148   avec \cmd{chmod} si nécessaire.
    149 
    150 \begin{yexample}\begin{verbatim}
    151 ls -l ~/.globus
    152 chmod 0400 ~/.globus/userkey.pem
    153 chmod 0444 ~/.globus/usercert.pem
    154 \end{verbatim}\end{yexample}
    155 
    156 \item Repérez les différents champs du certificat (sujet,
    157   validité...) en lisant son contenu avec la commande \cmd{openssl}.
    158 
    159 \begin{yexample}\begin{verbatim}
    160 openssl x509 -text -noout -in ~/.globus/usercert.pem
    161 \end{verbatim}\end{yexample}
    162 
    163 Quel est votre ``Subject''?  Quelle est la date de fin de validité
    164 de votre certificat?
    165 
    166 \end{enumerate}
    167 
    168 \subsection{Manipulation d'un proxy}
    169 
    170 Pour permettre à vos jobs d'accéder aux services de la grille,
    171 vous devez créer un proxy.  Un proxy est un fichier signé avec votre
    172 certificat qui est envoyé avec vos jobs.  Les proxies sont
    173 valables pour une durée limitée, normalement 12 à 24 heures.
    174 
    175 \begin{enumerate}
    176 
    177 \item Depuis la machine \uimachine, demandez un proxy.\footnote{L'erreur
    178 ``Cannot find file or dir: ... /.glite/vomses'' est normale.}
    179 
    180 \begin{yexample}\begin{verbatim}
    181 voms-proxy-init --voms vo.u-psud.fr
    182 \end{verbatim}\end{yexample}
    183 
    184 Cette commande crée un fichier signé avec votre certificat que vos
    185 jobs peuvent utiliser pour accéder aux services de la grille.
    186 Il vous est demandé de donner votre mot de passe.
    187 
    188 \item Affichez les informations du proxy créé.
    189 
    190 \begin{yexample}\begin{verbatim}
    191 voms-proxy-info
    192 \end{verbatim}\end{yexample}
    193 
    194 Les informations intéressantes sont le ``subject'', l'équivalent de
    195 votre ``username'' dans la grille, le ``timeleft'', le temps durant lequel
    196 le certificat est encore valable, et le nom de fichier pour le proxy.
    197 
    198 \item Supprimez explicitement le proxy.
    199 
    200 \begin{yexample}\begin{verbatim}
    201 voms-proxy-destroy
    202 \end{verbatim}\end{yexample}
    203 
    204 Cette commande supprime le proxy dans l'ordinateur local.  Les copies
    205 éventuellement envoyées avec vos jobs ne sont pas affectées.  Vérifiez que
    206 le proxy a bien été supprimé avec la commande \cmd{voms-proxy-info}.
    207 
    208 \item Regardez les autres options disponibles avec la commande
    209   \cmd{voms-proxy-init}.  (Utilisez \cmd{man} ou l'option ``-help''.)
    210   On peut changer, par exemple, la durée de vie et la taille (nombre
    211   de ``bits'') du proxy.  Normalement les valeurs par défauts sont correctes.
    212 
    213 \end{enumerate}
    214 
    215 Les anciennes commandes \cmd{grid-proxy-*} pour
    216 manipuler les proxies existent toujours.  Mais ces commandes ne supportent pas de mettre
    217 les informations de votre VO dans le proxy.  Les proxies VOMS sont
    218 100\% compatibles avec l'ancien format et il est préférable d'utiliser
    219 les commandes \cmd{voms-proxy-*}.
    220 
    221 Il existe aussi des commandes \cmd{myproxy-*}.  Elles permettent le
    222 renouvellement automatique des proxies pour des jobs de très longue
    223 durée.  Ces commandes ne seront pas utilisées dans ce tutorial.
    224 
    225 \subsection{Utilisation des groupes et rôles dans une VO}
    226 
    227 Les organisations virtuelles qui utilisent VOMS (Virtual Organisation
    228 Membership Server) peuvent définir des groupes et des rôles.  Tous les
    229 groupes que vous avez le droit d'utiliser sont décrits dans votre
    230 proxy VOMS\@.  Quand on crée un proxy, il est nécessaire de demander d'ajouter les
    231 rôles explicitement.
    232 
    233 Actuellement les groupes et les rôles ne sont pas respectés par tous les services
    234 grille. Dans le futur on pourra les utiliser pour le contrôle d'accès aux
    235 fichiers et aux services.
    236 
    237 \begin{enumerate}
    238 
    239 \item Pour lister les groupes de votre proxy utilisez la commande
    240   \cmd{voms-proxy-info} avec l'option ``-all'' (peut-être vous devrez
    241   créer un nouveau proxy avec \cmd{voms-proxy-init}). Les groupes dans les
    242   lignes marquées ``attribute''.  Une VO peut créer une hiérarchie dans les groupes.
    243 
    244 \begin{yexample}\begin{verbatim}
    245 voms-proxy-info -all
    246 \end{verbatim}\end{yexample}
    247 
    248 De quel(s) groupe(s) faites vous partie?
    249 
    250 \item Ajouter le rôle ``Tutorial1'' ou ``Tutorial2'' dans
    251   votre proxy.  La moitié des participants à ce tutoriel possède les droits pour utiliser le rôle
    252   ``Tutorial1'' et les autres pour utiliser ``Tutorial2''.  Si vous
    253   demandez un rôle pour lequel vous n'avez pas les droits, la commande
    254   \cmd{voms-proxy-init} échoue.
    255 
    256 \begin{yexample}\begin{verbatim}
    257 voms-proxy-init --voms vo.u-psud.fr:/Role=Tutorial1
    258 \end{verbatim}\end{yexample}
    259 
    260 Vérifiez le rôle dans votre proxy avec la commande
    261 \cmd{voms-proxy-info}.  Vérifiez aussi que la commande génère une
    262 erreur quand vous demandez le mauvais rôle.
    263 
    264 \end{enumerate}
     10 On va utiliser la procédure normale pour obtenir un certificat. Les certificats  pour cette formation ont une limite de validité de quelques jours. Normalement un  certificat a une limite de validité d’un an et peut être renouvellé. 
     11 1.Connectez-vous sur [http://igc.services.cnrs.fr/GRID-FR/certificats.html l’authorité de certification] CNRS pour la France.  ''N’utilisez pas le navigateur safari''
     12 1. Cliquez sur ‘Certificat personnel‘ à gauche de la page. 
     13 1. Remplissez les données du premier formulaire. Pour le nom utilisez 'EtudiantUn', 'EtudiantDeux', etc. Utilisez votre propre prénom. Cliquez sur « [suite] ». La procédure vérifie votre adresse électronique. Il est impératif que vous fournissiez une adresse valide et que vous puissiez accéder à votre boîte aux lettres à distance.  1.       Choisissez votre organisme, puis cliquez sur « [suite] ». Indiquez CNRS\@.    \item Choisissez votre laboratoire en consultant la liste, puis cliquez sur  « [suite] ». Indiquez le LAL\@.  \item Un récapitulatif des informations apparaît.  Vérifiez que les  informations sont correctes.  Si vous cliquez sur « [suite] », la demande est envoyée.  \item L’authorité de certification envoie un message électronique à l’adresse  que vous avez indiquée. Dans ce message il y a un lien que vous devez visiter  pour valider votre demande. Si vous utilisez les filtres SPAM, vérifiez que ce  message de confirmation n’est pas marqué comme SPAM\@.  \item Une fois la demande acceptée, vous allez recevoir un deuxième  message électronique contenant un lien à cliquer.  A  l’ouverture de la page correspondante, votre certificat est importé  dans votre navigateur.  \em{Vous devez ensuite utiliser le même navigateur que  vous avez utilisé pour faire la demande}.  \end{enumerate}  \subsection{L’enregistrement dans une VO}  L’accès aux ressources de la grille est contrôlé par des organisations  virtuelles (VO). Il est nécessaire d’être membre d’au moins une VO\@. Une fois  que vous avez votre certificat, il est nécessaire de contacter le « VO Manager »  d’une VO pour faire l’enregistrement.  Le site du \htmladdnormallinkfoot{« CIC Operations  Portal »}{https://cic.gridops.org/} contient les informations pour les VOs  principales et le lien pour s’enregistrer dans ces VOs. Cette page ne contient pas  toutes les VOs\@. Il peut être nécessaire de contacter quelqu’un de votre  organisation pour connaître le serveur correct.  Aujourd’hui, vous allez utiliser la VO « \voname ».  \begin{enumerate}  \item Allez au serveur  \htmladdnormallinkfoot{VOMS}{https://grid12.lal.in2p3.fr:8443/voms/\voname}  pour la VO \voname   avec un navigateur sur lequel votre certificat est installé.  \item Cliquez sur le lien « New user registration » dans la liste à  gauche.   \item Remplissez le formulaire et cliquez sur le bouton « I have read  and agree to the VO’s Usage Rules ».   \item Vous allez recevoir un message électronique pour confirmer votre adresse  électronique. (Vérifiez encore que le message n’est pas marqué comme SPAM\@.)  Cliquez sur l’URL de confirmation indiquée.  \item Le « VO Manager » doit valider votre demande. Une fois  la demande validée, vous allez recevoir un message électronique.  \end{enumerate}  \subsection{Exportation, installation et utilisation du certificat}  Votre certificat est installé dans votre browser. Pour utiliser la grille, on  doit extraire ce certificat et l’installer dans le « User Interface » \uimachine.  \begin{enumerate}  \item Utilisez la fonction « export » de votre navigateur pour faire  une sauvegarde de votre certificat au format pkcs12 (fichier .p12).   \begin{description}  \item[Firefox] Sélectionnez le menu FireFox/Preferences\@. Cliquez sur  « Avancer » à droite et l’onglet « Chiffrement ». Cliquez sur le bouton « Afficher les resultats... »,   sélectionnez votre certificat et utilisez la fonction « importer ».  \item[Mozilla] Dans le menu Edit/Preferences allez dans l’onglet « Privacy \& Security » puis dans « certificates ».  Cliquez sur « Manage Certificates », et utilisez la fonction « backup ».  \item[Netscape] Cliquez sur l’icône « sécurité » (ou passez par le menu Communicator/outils/Information sur la sécurité), puis cliquez sur le choix « vos certificats ».  \item[Internet Explorer] Dans le menu Outils/Options Internet, allez dans l’onglet « contenu » et cliquez sur « certificats ».  Cliquez ensuite sur « exporter ».  \end{description}  La procédure va demander un mot de passe pour sauvegarder votre certificat. Ne  l’oubliez pas.  \item Copiez votre certificat dans la machine \uimachine.  Remplacez  \file{cert.p12} par le nom exact de votre certificat dans toutes les commandes suivantes. Il a peut-être une extension « .pfx ».  \begin{yexample}\begin{verbatim}  scp cert.p12 etud01@grid11.lal.in2p3.fr:~/cert.p12  \end{verbatim}\end{yexample}  \item Connectez-vous via \cmd{ssh} sur \uimachine\ et  créez, dans votre « home directory », le répertoire \file{.globus}.  Descendez dans ce répertoire.  \begin{yexample}\begin{verbatim}  mkdir .globus  cd .globus  mv ~/cert.p12 .   \end{verbatim}\end{yexample}    \item Convertissez votre certificat au bon format et donnez-lui les bons  droits.  Pour utiliser la grille, vous avez besoin de deux fichiers \file{usercert.pem} et \file{userkey.pem} qui contiennent votre clé publique et votre clé privée.  \begin{yexample}\begin{verbatim}  openssl pkcs12 -in cert.p12 -clcerts -nokeys -out usercert.pem  openssl pkcs12 -in cert.p12 -nocerts -out userkey.pem  \end{verbatim}\end{yexample}  Ces commandes vont vous demander d’entrer le mot de passe que vous avez utilisé pour  créer le fichier \file{cert.p12}.  Pour créer le fichier  \file{userkey.pem}, la commande vous demande aussi de donner un nouveau mot de passe  associé pour protéger le fichier.  Normalement on utilise le même mot de passe  que pour le fichier \file{cert.p12}.  \item Vérifiez que les fichiers disposent des bons droits.  Le fichier  \file{userkey.pem} doit avoir les droits 0400; le fichier \file{usercert.pem} doit avoir les droits 0444.  Changez les droits avec \cmd{chmod} si nécessaire.   \begin{yexample}\begin{verbatim}  ls -l ~/.globus  chmod 0400 ~/.globus/userkey.pem  chmod 0444 ~/.globus/usercert.pem  \end{verbatim}\end{yexample}    \item Repérez les différents champs du certificat (sujet,  validité...) en lisant son contenu avec la commande \cmd{openssl}. \begin{yexample}\begin{verbatim} openssl x509 -text -noout -in ~/.globus/usercert.pem \end{verbatim}\end{yexample} Quel est votre « Subject »?  Quelle est la date de fin de validité de votre certificat? \end{enumerate} \subsection{Manipulation d’un proxy} Pour permettre à vos jobs d’accéder aux services de la grille, vous devez créer un proxy.  Un proxy est un fichier signé avec votre certificat qui est envoyé avec vos jobs.  Les proxies sont valables pour une durée limitée, normalement 12 à 24 heures. \begin{enumerate} \item Depuis la machine \uimachine, demandez un proxy.\footnote{L’erreur « Cannot find file or dir: ... /.glite/vomses » est normale.} \begin{yexample}\begin{verbatim} voms-proxy-init—voms vo.u-psud.fr \end{verbatim}\end{yexample}  Cette commande crée un fichier signé avec votre certificat que vos jobs peuvent utiliser pour accéder aux services de la grille.  Il vous est demandé de donner votre mot de passe. \item Affichez les informations du proxy créé.  \begin{yexample}\begin{verbatim} voms-proxy-info \end{verbatim}\end{yexample}  Les informations intéressantes sont le « subject », l’équivalent de votre « username » dans la grille, le « timeleft », le temps durant lequel le certificat est encore valable, et le nom de fichier pour le proxy. \item Supprimez explicitement le proxy. \begin{yexample}\begin{verbatim} voms-proxy-destroy \end{verbatim}\end{yexample}  Cette commande supprime le proxy dans l’ordinateur local.  Les copies éventuellement envoyées avec vos jobs ne sont pas affectées.  Vérifiez que le proxy a bien été supprimé avec la commande \cmd{voms-proxy-info}. \item Regardez les autres options disponibles avec la commande \cmd{voms-proxy-init}.  (Utilisez \cmd{man} ou l’option « -help ».) On peut changer, par exemple, la durée de vie et la taille (nombre de « bits ») du proxy.  Normalement les valeurs par défauts sont correctes. \end{enumerate} Les anciennes commandes \cmd{grid-proxy-*} pour manipuler les proxies existent toujours.  Mais ces commandes ne supportent pas de mettre les informations de votre VO dans le proxy.  Les proxies VOMS sont 100\% compatibles avec l’ancien format et il est préférable d’utiliser les commandes \cmd{voms-proxy-*}. Il existe aussi des commandes \cmd{myproxy-*}.  Elles permettent le renouvellement automatique des proxies pour des jobs de très longue durée.  Ces commandes ne seront pas utilisées dans ce tutorial. \subsection{Utilisation des groupes et rôles dans une VO} Les organisations virtuelles qui utilisent VOMS (Virtual Organisation Membership Server) peuvent définir des groupes et des rôles.  Tous les groupes que vous avez le droit d’utiliser sont décrits dans votre proxy VOMS\@.  Quand on crée un proxy, il est nécessaire de demander d’ajouter les rôles explicitement. Actuellement les groupes et les rôles ne sont pas respectés par tous les services grille. Dans le futur on pourra les utiliser pour le contrôle d’accès aux fichiers et aux services. \begin{enumerate} \item Pour lister les groupes de votre proxy utilisez la commande \cmd{voms-proxy-info} avec l’option « -all » (peut-être vous devrez  créer un nouveau proxy avec \cmd{voms-proxy-init}). Les groupes dans les  lignes marquées « attribute ».  Une VO peut créer une hiérarchie dans les groupes. \begin{yexample}\begin{verbatim} voms-proxy-info -all \end{verbatim}\end{yexample}  De quel(s) groupe(s) faites vous partie? \item Ajouter le rôle « Tutorial1 » ou « Tutorial2 » dans votre proxy.  La moitié des participants à ce tutoriel possède les droits pour utiliser le rôle « Tutorial1 » et les autres pour utiliser « Tutorial2 ».  Si vous demandez un rôle pour lequel vous n’avez pas les droits, la commande \cmd{voms-proxy-init} échoue.  \begin{yexample}\begin{verbatim} voms-proxy-init—voms vo.u-psud.fr:/Role=Tutorial1 \end{verbatim}\end{yexample} Vérifiez le rôle dans votre proxy avec la commande \cmd{voms-proxy-info}.  Vérifiez aussi que la commande génère une erreur quand vous demandez le mauvais rôle.  \end{enumerate}