Bases des technologies web

Sur un site réservé aux membres, un membre ordinaire connecté demande une page à laquelle seuls les administrateurs ont accès. Le serveur sait qui est l'utilisateur, mais n'autorise pas l'accès à cette page. Quel code d'état est le plus approprié pour la réponse ?

  1. A401 Unauthorized
  2. B403 Forbidden
  3. C404 Not Found
Afficher la réponse et l'explication

Réponse : B. 403 Forbidden

403 Forbidden indique que le serveur a compris la requête mais refuse d'en autoriser l'accès. Malgré son nom, 401 Unauthorized est le code qui signale des informations d'authentification absentes ou incorrectes, et l'en-tête WWW-Authenticate indique au client la méthode d'authentification. Ici, le serveur sait qui est l'utilisateur et ce qui manque, c'est le droit d'accès (l'autorisation) : 403 s'applique donc. Certaines conceptions renvoient délibérément 404 pour ne pas révéler l'existence d'une page d'administration, mais le code qui décrit la situation telle qu'elle est, c'est 403.

S'entraîner sur ce thème Retour au thème

Autres questions sur Bases des technologies web

  1. Une API web renvoie des données au format JSON comme corps de sa réponse. Quel en-tête ajoute-t-on généralement à la réponse pour indiquer le format du corps ?
  2. Un navigateur demande de nouveau une image reçue précédemment, en plaçant dans l'en-tête If-None-Match la valeur ETag de la réponse d'alors. Si l'image n'a pas changé sur le serveur, quelle est la réponse correcte du serveur ?
  3. Quelle description de HTTP/2 et HTTP/3 est correcte ?
  4. On récupère, l'un après l'autre, un fichier HTML et les quatre images qu'il référence sur un serveur web dont le RTT est de 40 ms. On suppose que l'établissement d'une connexion TCP prend un aller-retour et que chaque requête et sa réponse prennent un aller-retour, et l'on néglige le temps de transfert des données, le temps de traitement du serveur, TLS et la fermeture des connexions. Quelle est la différence de durée totale entre l'ouverture d'une nouvelle connexion TCP pour chaque objet et la réutilisation d'une seule connexion TCP (connexion persistante) ?
  5. HTTP est un protocole sans état. Quelle description de ce que cela signifie et de la façon habituelle dont un site web garde un utilisateur connecté est correcte ?