Question

J'essaie de concevoir un système unique pour une utilisation dans une architecture distribuée. Plus précisément, je dois fournir un moyen pour un site Web client (c'est-à-dire un site Web sur un domaine / serveur / réseau différent) pour permettre aux utilisateurs d'enregistrer des comptes sur mon système central.

Ainsi, lorsque l'utilisateur prend une action sur un site Web client et que l'action est réputée nécessiter un compte, le client produira une page (sur son site / domaine) où l'utilisateur peut s'inscrire à un nouveau compte en fournissant un e-mail et le mot de passe.

Le client doit ensuite envoyer ces informations à un service Web, qui enregistrera le compte et renverra une valeur de type de jeton de session.

Le client devra hacher le mot de passe avant de l'envoyer à travers le fil, et le service Web nécessitera HTTPS, mais cela n'a pas l'impression qu'il est suffisamment sûr et j'ai besoin de conseils sur la façon dont je peux implémenter cela de la manière la plus sécurisée possible.

Quelques autres bits d'informations pertinentes:

  • Idéalement, nous préférerions ne pas partager de code avec le client
  • Nous avons envisagé de rediriger l'utilisateur vers une page sécurisée sur le même serveur que le service Web, mais cela est susceptible d'être rejeté pour des raisons non techniques.
  • Nous avons presque une certainelle besoin de saler le mot de passe avant de le hacher et de le passer, mais cela nécessite que le client soit a) générer le sel et le communiquer, ou b) venez nous demander le sel - les deux se sentent sales.

Toute aide ou conseil est le plus apprécié.

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
scroll top