Différences entre les versions de « Authentification à deux facteurs (A2F) »

(nouveau script python de Michele avec l'option -o)
(ajout section recommandation)
 
(5 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 11 : Ligne 11 :
 
== Comment? ==
 
== Comment? ==
  
Les TI ont définis 5 façons de recevoir le 2e facteur d'authentification:
+
Les TI ont définis 4 façons de recevoir le 2e facteur d'authentification:
  
 
* recevoir le code numérique via un message texte sur votre téléphone cellulaire
 
* recevoir le code numérique via un message texte sur votre téléphone cellulaire
* recevoir le code numérique via l'application Microsoft Authenticator sur votre téléphone cellulaire ou tablette Android ou iOS
+
* recevoir le code numérique via une application sur votre téléphone cellulaire ou tablette (Microsoft Authenticator ou autres)
* recevoir le code numérique via l'application Oracle Authenticator sur votre ordinateur roulant sous Windows
+
* recevoir le code numérique via une application sur votre ordinateur roulant sous Windows (Oracle Authenticator, KeepassXC)
* recevoir le code numérique via l'application KeePassXC sur votre ordinateur roulant sous Windows, macOS ou Linux
+
* recevoir le code numérique via une application sur votre ordinateur roulant sous macOS ou Linux (KeePassXC)
* recevoir un appel vocal sur votre téléphone cellulaire, personnel ou de bureau, (dans ce cas-ci vous ne recevrez pas un code numérique, mais devrez plutôt appuyer sur le touche # lorsque demandé)
+
 
 +
Notez que la 5e option, recevoir un appel vocal sur votre téléphone cellulaire, personnel ou de bureau, ne sera plus disponible à partir du 27 novembre 2023, voir cet [https://monudem.umontreal.ca/visualiser/sites/BCRP/Pages/Avis/Retrait-de-la-m%C3%A9thode-d%E2%80%99authentification-par-appel-t%C3%A9l%C3%A9phonique-vocal-.aspx énoncé sur monudem] à ce sujet.
  
 
== Quelle façon choisir? ==
 
== Quelle façon choisir? ==
Ligne 30 : Ligne 31 :
 
| J’ai un téléphone intelligent et je voyage fréquemment || Application d’authentification
 
| J’ai un téléphone intelligent et je voyage fréquemment || Application d’authentification
 
|-
 
|-
| J’ai un téléphone cellulaire sans accès aux données || Appel téléphonique ou message texte
+
| J’ai un téléphone cellulaire sans accès aux données || Message texte ou application d'authentification hors-ligne
 
|-
 
|-
| J’ai une tablette android ou ios || Application Microsoft Authenticator
+
| J’ai une tablette android ou ios || Application d'authentification sur votre tablette
 
|-
 
|-
| Je suis en télétravail sans téléphone cellulaire || Appel téléphonique ou application d’authentification
+
| Je suis en télétravail sans téléphone cellulaire || Application d’authentification sur ordinateur
 
|}
 
|}
  
Ligne 41 : Ligne 42 :
 
Nous vous recommandons très fortement de toujours avoir au minimum 2 façons différentes de recevoir le 2e facteur d'authentification.  Vous pouvez perdre ou vous faire voler un téléphone cellulaire, même chose pour un ordinateur portable ou une tablette, c'est donc important d'avoir une 2e façon de vous authentifier si jamais ça se produit.
 
Nous vous recommandons très fortement de toujours avoir au minimum 2 façons différentes de recevoir le 2e facteur d'authentification.  Vous pouvez perdre ou vous faire voler un téléphone cellulaire, même chose pour un ordinateur portable ou une tablette, c'est donc important d'avoir une 2e façon de vous authentifier si jamais ça se produit.
  
Vous pouvez par exemple recevoir un message sur votre cellulaire et avoir une application d'authentification sur votre ordinateur comme 2e option.
+
=== Notre recommandation ===
 +
 
 +
Après avoir vécu avec l'authentification à 2 facteurs pendant maintenant 2 ans, voici notre recommandation:
 +
 
 +
* Installez KeepassXC sur votre ordinateur (il est disponible sur toutes les plateformes)
 +
* Créez une voute dans KeepassXC spécifiquement pour l'A2F en suivant [https://wiki.umontreal.ca/display/SIE/Configurer+KeePassXC le guide des TI]
 +
* Si vous avez plusieurs ordinateurs, installez KeepassXC sur chacun d'eux et recopiez votre voute sur chaque (pas besoin de refaire la procédure au complet, juste à copier le fichier)
 +
* Sur chacun de vos appareils mobile, installez une application d'authentification, voici quelques suggestions:
 +
** iOS/iPadOS: [https://apps.apple.com/us/app/raivo-authenticator/id1459042137 Raivo], [https://apps.apple.com/us/app/microsoft-authenticator/id983156458 Microsoft Authenticator], [https://apps.apple.com/us/app/google-authenticator/id388497605 Google Authenticator]
 +
** Android: [https://play.google.com/store/apps/details?id=com.beemdevelopment.aegis Aegis], [https://play.google.com/store/apps/details?id=com.azure.authenticator Microsoft Authenticator], [https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2 Google Authenticator]
 +
* Dans KeepassXC, utilisez la fonction "TOTP -> Afficher le code QR" ou "TOTP -> Configurer TOTP" pour importer votre code de sécurité dans l'application d'authentification sur votre appareil mobile.  Si l'application que vous avez choisis permet de scanner un code QR vous pourrez alors simplement scanner le code QR présenté par KeepassXC, sinon vous devrez recopier manuellement la clé secrète présentée par l'écran de configuration dans KeepassXC
 +
* Effectuez la même procédure sur tout vos appareils mobiles si vous en avez plusieurs
 +
* Une fois les applications configurées sur vos mobiles, allez dans KeepassXC sur votre ordinateur et utilisez la fonction "TOTP -> Afficher TOTP". Assurez-vous que le code affiché est identique sur tous vos ordinateurs et tous vos appareils mobiles.
 +
* Optionnellement, utilisez le script sur la page [[Authentification à deux facteurs (A2F) via Python]] pour accélerer l'accès au code
  
 
== Pour plus de détails ==
 
== Pour plus de détails ==
Ligne 53 : Ligne 67 :
 
http://a2f.umontreal.ca/
 
http://a2f.umontreal.ca/
  
== Obtenir un code via un script Python ==
+
== Voir aussi ==
 
 
si pour une raison quelconque vous ne pouvez utiliser les outils choisis par les TI, il est possible d'obtenir un code A2F via le script Python (version 3) suivant:
 
 
 
<pre>
 
#!/usr/bin/env python3
 
 
 
"""
 
Générer un code pour le 2FA UdeM
 
Ce code a été testé avec python v3
 
python3 ./gettingOTP.py --help
 
 
 
La première fois que vous roulerez ce code il vous demandera d'entrer le clé OTP
 
Pour plus d'information voir
 
https://dms.umontreal.ca/wiki/index.php?title=Authentification_%C3%A0_deux_facteurs_(A2F)
 
 
 
Le code sera sauvgardé dans votre home .saved_otp
 
 
 
Vous avez besoin des librairies pyotp et cryptography
 
pip3 install --user pyotp cryptography
 
 
 
 
 
@Author: Equipe DMS
 
@Date: Dec 7, 2021
 
@version: 0.2
 
 
 
"""
 
 
 
import pyotp
 
 
 
import datetime,time
 
import argparse, os, sys, base64
 
from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC
 
from cryptography.hazmat.primitives import hashes
 
from getpass import getpass
 
from cryptography.fernet import Fernet
 
 
 
_file=os.path.expanduser('~/.saved_totp')
 
 
 
def range_limit_loop(arg):
 
try:
 
_value=int(arg)
 
except ValueError:
 
raise argparse.ArgumentTypeError("Valeur doit être un nombre entier")
 
if _value < 2 or _value > 30:
 
raise argparse.ArgumentTypeError("Valeur doit être entre 2 et 30")
 
return _value
 
 
 
parser = argparse.ArgumentParser()
 
parser.add_argument('-e', '--encrypt', action="store_true")
 
parser.add_argument('-l', '--loop', default=-1, help="Valeur entre 2 et 30 secondes", type=range_limit_loop )
 
parser.add_argument('-o', '--only_code', action="store_true", help="Affiche seulement le code" )
 
 
 
args = parser.parse_args()
 
 
 
if args.encrypt:
 
_pass=getpass()
 
salt=b'\xa1\xb3\xd9l\xa4\xa0\xa7\x0c\xf5\xf4\x84)3P\x98\xf5'
 
kdf = PBKDF2HMAC(
 
algorithm=hashes.SHA256(),
 
length=32,
 
salt=salt,
 
iterations=390000,
 
)
 
key = base64.urlsafe_b64encode(kdf.derive( str.encode(_pass) ))
 
 
 
fernet = Fernet(key)
 
 
if not os.path.isfile(_file):
 
_key=input('Entrez la clé TOTP =>')
 
_key=str.encode(_key)
 
if args.encrypt: 
 
_key=fernet.encrypt(_key)
 
f=open(_file,'wb')
 
f.write( _key )
 
os.chmod('~/.saved_totp', 0o400 )
 
 
 
f=open(_file,'rb')
 
_key= f.read()
 
 
 
if args.encrypt: 
 
_key=fernet.decrypt(_key)
 
else:
 
_key=_key.decode("utf-8")
 
 
 
totp = pyotp.TOTP(_key)
 
 
 
while True:
 
_time_remaining = totp.interval - datetime.datetime.now().timestamp() % totp.interval
 
 
 
# S'il reste moins de 2 secondes, lire le prochain code
 
if _time_remaining<2:
 
_code=totp.at(datetime.datetime.now().timestamp()+2)
 
_time_remaining=30
 
else:
 
_code=totp.now()
 
 
 
if args.only_code:
 
print(_code, end="")
 
break;
 
else:
 
print("Clé OTP courante: %s Temps restant %d " % (_code, _time_remaining), end='\r')
 
if args.loop<1:
 
print("\n");
 
break;
 
else:
 
time.sleep(args.loop)
 
 
 
</pre>
 
 
 
Copiez le code dans un fichier nommé loopOTP.py et rendez-le exécutable (varie selon votre plateforme).  Ensuite utilisez-le comme ceci:
 
 
 
<pre>
 
./loopOTP.py -e -l 5
 
</pre>
 
 
 
Lors de la première exécution il vous demandera un mot de passe qui servira à encrypter clé TOTP (vous pouvez enlever l'option -e si vous ne désirez pas avoir cette fonction).  Ensuite il vous demandera votre clé TOTP (que vous pouvez obtenir sur le site web des TI, voir l'image ci-dessous pour un résumé).  Une fois configuré il affichera votre code OTP à chaque 5 secondes.  Vous n'avez qu'à relancer la commande plus tard pour avoir votre code, il vous demandera alors seulement votre mot de passe puis affichera votre code TOTP à chaque 5 secondes.
 
 
 
Vous pouvez aussi l'éxécuter avec l'option '''-o''' au lieu de '''-l 5''', ceci affichera le code seulement une fois au lieu de le faire en loop.
 
  
Pour obtenir votre clé TOTP:
+
* [[Authentification à deux facteurs (A2F) sous Linux]]
[[Image:a2f.gif]]
+
* [[Authentification à deux facteurs (A2F) via Python]]

Version actuelle datée du 20 novembre 2023 à 11:44

Guide rapide pour l'Authentification à deux facteurs (A2F) à l'UdeM.

Qu'est-ce que c'est?

Un 2e facteur d'authentification est un code numérique qui est ajouté à votre code d'usager et votre mot de passe pour vous authentifier aux divers systèmes informatique de l'Université. Ce code numérique vous sera demandé aléatoirement quand vous vous brancherez à un système qui utilise cette fonction, comme par exemple le VPN ou vos courriels sur Office365.

Pourquoi?

Un code d'usager ne change pratiquement jamais et un mot de passe change seulement une ou deux fois par année, ce qui les rend vulnérables à être volés, interceptés ou même devinés. Ajouter un 2e facteur d'authentification permet de protéger votre compte car le code numérique change à chaque fois que vous l'utilisez, ce qui le rend très difficile à intercepter ou voler.

Comment?

Les TI ont définis 4 façons de recevoir le 2e facteur d'authentification:

  • recevoir le code numérique via un message texte sur votre téléphone cellulaire
  • recevoir le code numérique via une application sur votre téléphone cellulaire ou tablette (Microsoft Authenticator ou autres)
  • recevoir le code numérique via une application sur votre ordinateur roulant sous Windows (Oracle Authenticator, KeepassXC)
  • recevoir le code numérique via une application sur votre ordinateur roulant sous macOS ou Linux (KeePassXC)

Notez que la 5e option, recevoir un appel vocal sur votre téléphone cellulaire, personnel ou de bureau, ne sera plus disponible à partir du 27 novembre 2023, voir cet énoncé sur monudem à ce sujet.

Quelle façon choisir?

C'est à vous de déterminer quelle façon choisir selon votre situation et les appareils que vous avez à votre disposition. Voici les recommandations des TI:

Situation 2e facteur à privilégier
J’ai un téléphone intelligent et je voyage rarement Toutes les façons sont bonnes
J’ai un téléphone intelligent et je voyage fréquemment Application d’authentification
J’ai un téléphone cellulaire sans accès aux données Message texte ou application d'authentification hors-ligne
J’ai une tablette android ou ios Application d'authentification sur votre tablette
Je suis en télétravail sans téléphone cellulaire Application d’authentification sur ordinateur

Faut-il avoir plus qu'une façon?

Nous vous recommandons très fortement de toujours avoir au minimum 2 façons différentes de recevoir le 2e facteur d'authentification. Vous pouvez perdre ou vous faire voler un téléphone cellulaire, même chose pour un ordinateur portable ou une tablette, c'est donc important d'avoir une 2e façon de vous authentifier si jamais ça se produit.

Notre recommandation

Après avoir vécu avec l'authentification à 2 facteurs pendant maintenant 2 ans, voici notre recommandation:

  • Installez KeepassXC sur votre ordinateur (il est disponible sur toutes les plateformes)
  • Créez une voute dans KeepassXC spécifiquement pour l'A2F en suivant le guide des TI
  • Si vous avez plusieurs ordinateurs, installez KeepassXC sur chacun d'eux et recopiez votre voute sur chaque (pas besoin de refaire la procédure au complet, juste à copier le fichier)
  • Sur chacun de vos appareils mobile, installez une application d'authentification, voici quelques suggestions:
  • Dans KeepassXC, utilisez la fonction "TOTP -> Afficher le code QR" ou "TOTP -> Configurer TOTP" pour importer votre code de sécurité dans l'application d'authentification sur votre appareil mobile. Si l'application que vous avez choisis permet de scanner un code QR vous pourrez alors simplement scanner le code QR présenté par KeepassXC, sinon vous devrez recopier manuellement la clé secrète présentée par l'écran de configuration dans KeepassXC
  • Effectuez la même procédure sur tout vos appareils mobiles si vous en avez plusieurs
  • Une fois les applications configurées sur vos mobiles, allez dans KeepassXC sur votre ordinateur et utilisez la fonction "TOTP -> Afficher TOTP". Assurez-vous que le code affiché est identique sur tous vos ordinateurs et tous vos appareils mobiles.
  • Optionnellement, utilisez le script sur la page Authentification à deux facteurs (A2F) via Python pour accélerer l'accès au code

Pour plus de détails

Veuillez consulter l'article publié sur le Wiki des TI, ceci est la documentation officielle pour tout ce qui touche au 2FA:

https://wiki.umontreal.ca/pages/viewpage.action?pageId=184126772

Pour configurer vos accès 2FA, utilisez ce site:

http://a2f.umontreal.ca/

Voir aussi


La dernière modification de cette page a été faite le 20 novembre 2023 à 11:44.