Comment cookie d'authentification basée sur le travail?
Quelqu'un peut me donner une description étape par étape comment cookie d'authentification basée sur les œuvres? Je n'ai jamais fait quoi que ce soit impliquant soit d'authentification ou de cookies. Quel est le navigateur a besoin de faire? Ce n'est que le serveur a besoin de faire? Dans quel ordre? Comment pouvons-nous garder les choses en sécurité?
J'ai lu sur les différents types d'authentification et sur les cookies, mais je voudrais une description de base de la façon d'utiliser les deux ensemble - je ne l'ai lu qu'ils sont souvent utilisés ensemble, mais ne pouvait pas trouver une description de la façon dont.
Vous devez vous connecter pour publier un commentaire.
Un cookie est fondamentalement juste un élément dans un dictionnaire. Chaque élément a une clé et une valeur. Pour l'authentification, la clé pourrait être quelque chose comme "nom d'utilisateur" et la valeur doit être le nom d'utilisateur. Chaque fois que vous faites une demande pour un site web, votre navigateur va inclure les cookies dans la requête et le serveur serveur hôte de vérifier les cookies. Si l'authentification peut se faire automatiquement comme ça.
De définir un cookie, il vous suffit de l'ajouter à la réponse, le serveur renvoie une demande. Le navigateur va alors ajouter le cookie lors de la réception de la réponse.
Il y a différentes options que vous pouvez configurer pour le cookie côté serveur, comme des temps d'expiration ou de chiffrement. Un cookie crypté est souvent mentionné que la signature d'un témoin. Fondamentalement, le serveur crypte la clé et la valeur dans l'article de dictionnaire, de sorte que seul le serveur peut faire usage de l'information. Alors cookie serait sécurisé.
Un navigateur enregistrer les cookies placés par le serveur. Dans l'en-tête HTTP de chaque requête, le navigateur envoie au serveur, il va ajouter les cookies. Il ne fera qu'ajouter des cookies pour les domaines qui les a mis. Example.com peut placer un cookie et également ajouter des options dans l'en-tête HTTP pour les navigateurs pour envoyer le cookie sous-domaines, comme sub.example.com. Il serait inacceptable pour un navigateur à jamais envoie des cookies pour un domaine différent.
Je réalise que j'ai des années de retard, mais j'ai pensé que je pourrais développer sur sa réponse et ajouter un peu plus à la discussion.
Étape 1: le Client > la Signature
Avant toute chose, l'utilisateur doit s'inscrire. Le client valide une requête HTTP vers le serveur contenant son nom d'utilisateur et mot de passe.
Étape 2: Serveur > la Manipulation de vous inscrire
Le serveur reçoit la requête et les tables de hachage du mot de passe avant de stocker le nom d'utilisateur et le mot de passe de votre base de données. De cette façon, si quelqu'un a accès à votre base de données, ils ne verront pas votre réelle des utilisateurs des mots de passe.
Étape 3: Client > connexion de l'Utilisateur
Maintenant votre utilisateur se connecte. Il/elle assure leur nom d'utilisateur/mot de passe et de plus, c'est une requête HTTP vers le serveur.
Étape 4: Serveur > Validation de la connexion
Le serveur recherche le nom d'utilisateur dans la base de données, hache fournie mot de passe de connexion, et la compare à celle précédemment hachage de mot de passe dans la base de données. Si ce n'est pas check out, nous pouvons leur refuser l'accès par l'envoi d'un code de statut 401 et de fin de la demande.
Etape 5: Serveur > Génération de jeton d'accès
Si tout marche bien, nous allons créer un jeton d'accès, qui identifie de manière unique la session de l'utilisateur. Toujours dans le serveur, nous faisons deux choses avec le jeton d'accès:
Désormais, les cookies seront joints à chaque demande (et la réponse) conclu entre le client et le serveur.
Etape 6: Client > Faire des demandes de page
De retour sur le côté client, nous sommes maintenant connecté. Chaque fois que le client fait une requête pour une page qui nécessite une autorisation (c'est à dire qu'ils ont besoin d'être connecté), le serveur obtient le jeton d'accès à partir du cookie et vérifie l'encontre de l'un dans la base de données associées à cet utilisateur. S'il vérifie, l'accès est accordé.
Cela devrait vous obtenir a commencé. Assurez-vous d'effacer les cookies lors de la déconnexion!
Cookie D'Authentification Basée Sur Les
Des Cookies en fonction de l'Authentification fonctionne normalement dans ces 4 étapes-
Navigateur soumettre cet Id de session à chaque nouvelle demande, l'ID de session est vérifiée sur la base de données, basé sur cet id de session du site web permettra d'identifier la session appartenant au client et de donner ensuite accéder à la demande.
Une fois qu'un utilisateur se déconnecte de l'application, la session est détruite à la fois côté client et côté serveur.