DIAS

De Wiki JabberFR
Aller à la navigation Aller à la recherche

Présentation

DIAS est un système d'authentification utilisant Jabber. Il permet de s'assurer qu'un utilisateur possède bien l'adresse Jabber qu'il prétend posséder. DIAS se base sur un mécanisme de ticket. L'utilisateur voulant s'authentifier doit d'abord demander un ticket à un agent DIAS en utilisant Jabber. Une fois que l'utilisateur a récupéré un ticket, il peut le fournir au système sur lequel il souhaite s'authentifier. Ce système va ensuite vérifier que le ticket soit valable et trouver à quel identifiant Jabber il correspond. Cela peut se faire de plusieurs manières, par exemple en le demandant à l'agent. Il doit y avoir une relation de confiance entre le système final et l'agent.

Le client DIAS peut être un client dédié à ce travail, il existe par exemple un client en PHP qui ne sert qu'à interroger un agent DIAS.

Avantages

  • Permet une authentification en n'utilisant qu'un identifiant Jabber, ni l'agent, ni le serveur n'ont besoin de connaitre le mot de passe de l'utilisateur.
  • Contrairement à la XEP 0070, la demande d'authentification se fait à la demande du client et non à la demande du serveur, ce qui évite les risques d'usurpations d'identités

Implémentations existantes

auth.jabberfr.org

JabberFR héberge un agent DIAS, xmpp:auth.jabberfr.org. Il peut gérer l'authentification de plusieurs sites, chaque site étant un sous domaine de auth.jabberfr.org, par exemple xmpp:jabberfr@auth.jabberfr.org . La communication entre l'agent et le serveur se fait à l'aide d'une clé privée commune aux deux programmes. Le ticket délivré par l'agent est une chaine de caractères contenant l'heure d'expiration du ticket et l'adresse Jabber de la personne ayant demandé le ticket, cette chaine est chiffré avec la clé privée avant d'être envoyé au client. Le serveur peut déchiffrer le ticket avec la clé privée pour trouver l'adresse Jabber de la personne, et peut vérifier la validité en regardant l'heure d'expiration du ticket.

Cette implémentation permet de récupérer les tickets soit avec le protocole DIAS, soit en s'enregistrant auprès de l'agent. Il n'est donc pas nécessaire d'avoir un client compatible DIAS pour pouvoir l'utiliser.

Liens externes