Journalisation IIS pour l'authentification Windows intégrée

Traductions disponibles Traductions disponibles
Numéro d'article: 969060 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

INTRODUCTION

Cet article traite la demande et la réponse la communication entre un client HTTP et un serveur Internet Information Services (IIS) lorsque l'authentification intégrée Windows est configurée. Cet article illustre également la façon que IIS enregistre ce processus d'authentification dans les journaux IIS.

Plus d'informations

L'authentification intégrée de Windows utilise l'authentification Kerberos v5 et l'authentification NTLM. Kerberos est un protocole d'authentification standard qui est utilisé pour vérifier l'identité de l'utilisateur ou l'identité de l'hôte. Si Active Directory est installé sur un contrôleur de domaine qui exécute Windows 2000 Server, Windows Server 2003 ou Windows Server 2008 et que le navigateur Web client prend en charge le protocole Kerberos v5, le client et le serveur IIS utilisent l'authentification Kerberos v5. Sinon, le client et le serveur IIS utilisent l'authentification NTLM.

Remarque : Pour obtenir des informations détaillées sur l'authentification intégrée de Windows, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://technet2.Microsoft.com/WindowsServer/en/Library/80c79abb-348d-467a-92fe-825e696be3351033.mspx?mfr=true
La manière que les journaux IIS NTLM et l'authentification Kerberos dans IIS des fichiers journaux est différente selon le protocole utilisé.

Si le serveur IIS et le client HTTP qui rend le Web demande prennent en charge le protocole Kerberos et IIS est configuré pour utiliser Kerberos, les entrées du journal semblables aux suivants apparaissent dans le journal IIS pour la réponse de requête et le serveur client :

# Logiciel : Microsoft Internet Information Services 6.0
# Version : 1.0 # Date : 2009-01-01 02 : 48 : 20
# Champs : date heure s-sitename s-ip cs-method cs-uri-stem cs-uri-query port s cs-username-c-ip cs(User-Agent) sc-status sous-état sc sc-win32-status
01 / 01/2009 02 : 48 : 20 W3SVC1 <serverIP>GET / - 80 - <clientIP>Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1) 2148074254 de 2 401
01 / 01/2009 02 : 48 : 21 W3SVC1 <serverIP>obtenir / - 80 domaine\utilisateur <clientIP>Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1) 200 0 0</clientIP> </serverIP></clientIP></serverIP>

Si le serveur IIS ou le client HTTP ne prend pas en charge le protocole Kerberos, ou si le serveur IIS est configuré pour utiliser uniquement NTLM, les types suivants d'entrées de journal s'affichent dans le journal IIS pour la réponse de requête et le serveur du client :

# Logiciel : Microsoft Internet Information Services 6.0
# Version : 1.0
# Date : 2009-01-05 02 : 29 : 47
# Champs : date heure s-sitename s-ip cs-method cs-uri-stem cs-uri-query port s cs-username-c-ip cs(User-Agent) sc-status sous-état sc sc-win32-status
01 / 01/2009 02 : 29 : 47 W3SVC1 <serverIP>GET / - 80 - <clientIP>Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1) 2148074254 de 2 401
01 / 01/2009 02 : 29 : 47 W3SVC1 <serverIP>GET / <clientIP>Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1) 401 - 80 - 1 0
01 / 01/2009 02 : 29 : 47 W3SVC1 <serverIP>obtenir / - 80 domaine\utilisateur <clientIP>Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1) 200 0 0</clientIP> </serverIP></clientIP></serverIP></clientIP></serverIP>

Authentification intégrée de Windows

IIS peut être configuré pour prendre en charge le protocole Negotiate, le protocole NTLM ou les deux. Dans IIS 6.0 et versions antérieures, cela en configurant la clé de métabase NTAuthenticationProviders. Dans IIS 7.0, cela en définissant l'approprié <Provider></Provider> élément sous la <windowsAuthentication></windowsAuthentication> élément dans le fichier ApplicationHost.config ou dans le fichier web.config.

Pour plus d'informations sur la façon de configurer Windows intégré d'authentification dans IIS 6.0 et versions antérieures, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
215383Comment configurer IIS pour prendre en charge le protocole Kerberos et le protocole NTLM pour l'authentification réseau
Pour plus d'informations sur comment configurer l'authentification Windows intégrée dans IIS 7.0, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://technet.Microsoft.com/en-us/library/cc754628.aspx

Authentification Kerberos

Voici deux exemples de scénario. Dans le premier scénario, IIS est configuré pour prendre en charge le protocole Negotiate et le protocole NTLM. Dans le second scénario, seul le protocole Negotiate est pris en charge.

Scénario 1 ? protocole Negotiate et le protocole NTLM

Dans cet exemple, IIS est configuré pour prendre en charge le protocole Negotiate et le protocole NTLM. Dans IIS 6.0 et versions antérieures, cela en définissant la clé de métabase NTAuthenticationProviders « Negotiate, NTLM ». Dans IIS 7.0 et versions ultérieures, le protocole Negotiate et le protocole NTLM doivent être répertoriés en tant que fournisseurs dans la section <windowsAuthentication>.

Remarque : Dans les exemples suivants, l'en-tête de demande et l'en-tête de réponse sont capturés à l'aide de l'outil Microsoft Network Monitor 3.2. Pour télécharger la dernière version de l'outil Moniteur réseau, reportez-vous au site Web suivant :</windowsAuthentication>
http://www.Microsoft.com/en-us/download/Details.aspx?displaylang=en&ID=4865
Lorsque Microsoft Internet Explorer émet une requête, Microsoft Internet Explorer considère toujours la première demande d'une nouvelle connexion à être anonyme. Par conséquent, Internet Explorer n'envoie pas d'informations d'identification dans le cadre de la demande. Voici un exemple des en-têtes de demande Internet Explorer envoie dans la première demande d'une ressource :

HTTP: Demande GET /
Commande : obtenir
ProtocolVersion: HTTP/1.1
Accepter : image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, * / *
Accept-Language : en-us
Accepter-Encoding : gzip, deflate
UserAgent : Mozilla/4.0 (compatible ; MICROSOFT INTERNET EXPLORER 6.0 ; Windows NT 5.1)
Hôte : www.kerberos.com
Connexion : Keep-Alive

Si le serveur IIS n'est pas configuré pour prendre en charge l'authentification anonyme, le serveur IIS renvoie l'état 401.2 qui indique au client que le client n'est pas autorisé. Ainsi que l'état d'erreur, le serveur envoie également une liste des protocoles d'authentification que le serveur prend en charge. Les en-têtes de réponse qu'IIS renvoie dans ce scénario ressembler à ceci :

HTTP: Code d'état réponse, HTTP/1.1 = 401
ProtocolVersion: HTTP/1.1
StatusCode : 401, non autorisé
Raison : non autorisé
ContentLength : 1656
ContentType : text/html
Serveur : Microsoft-IIS/6.0
WWWAuthenticate : négocier
WWWAuthenticate : NTLM

Après avoir IIS server envoie cette réponse, IIS écrit l'entrée associée suivante dans le journal IIS :

<Date> <Time>W3SVC<ID> <serverIP> obtenir / - 80 - <clientIP>401 2 2148074254 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1)</clientIP> </serverIP> </ID></Time></Date>

Remarque : État win32 de « 2148074254 » (également défini en tant que-2146893042 / 0x8009030E / SEC_E_NO_CREDENTIALS) signifie « aucune information d'identification n'est disponibles dans le package de sécurité ». En d'autres termes, le client n'a pas envoyé d'informations d'identification.

Une fois que le client reçoit la réponse 401.2 à partir du serveur IIS, le client ne comprend que IIS est configuré pour utiliser l'authentification Windows intégrée au lieu de l'authentification anonyme. Par conséquent, le client doit fournir des informations d'authentification appropriées dans sa demande.

Le client effectue ensuite une demande semblable au suivant :

HTTP: Demande GET /
Commande : obtenir
URI: /
ProtocolVersion: HTTP/1.1
Accepter : image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, * / *
Accept-Language : en-us
Accepter-Encoding : gzip, deflate
UserAgent : Mozilla/4.0 (compatible ; MICROSOFT INTERNET EXPLORER 6.0 ; Windows NT 5.1)
Hôte : www.kerberos.com
Connexion : Keep-Alive
Autorisation : négocier
YIIJ5wYGKwYBBQUCoIIJ2zCCCdegJDAiBgkqhkiC9xIBAgIGCSqGSIb3EgECAgYKKwYBBAGCNwICCqKCCa0EggmpYIIJpQYJKoZIhvcSAQICAQBugggtygmUMIIJkKADAgEFoQMCAQ6iBwMFACAAAACjggPMYYIDyDCCA8SgAwIBBaENGwtWQU5EQU5BLkNPTaIjMCGgAwIBAqEaMBgbBEhUVFAbEHd3dy5rZXJiZXJvc

Remarque : Dans cet article, de Kerberos ticket dans l'autorisation : négocier en-tête a été tronqué.

Le serveur IIS reçoit la demande. Le serveur IIS voit que le client a inclus des informations d'authentification en ajoutant l'autorisation : négocier en-tête et valeur. Si le client a envoyé les informations d'identification valides, l'authentification est réussie. Ensuite, IIS envoie la réponse suivante :

HTTP: Code d'état réponse, HTTP/1.1 = 200
ProtocolVersion: HTTP/1.1
StatusCode : 200 Ok
Raison: OK
Date : xxx, <Date> <Time>GMT
Serveur : Microsoft-IIS/6.0
ContentLength : 19
ContentType : text/html
WWWAuthenticate : Négocier oYGhMIGeoAMKAQChCwYJKoZIgvcSAQICooGJBIGGYIGDBgkqhkiG9xIBAgICAG90MHKgAwIBBaEDAgEPomYwZKADAgEXol0EWxX5VcXsWZwSk7Q6NI5uYf, pLeQ7InM61FPS, ZED4FxR6MK/MK4RjgKgty4u3g143PhRwYr40hI/RAUpvTBeCubY8dOZR0BHG8RgdX2588vAXGIcZIpyRyYHYAmaJ8 =</Time> </Date>

Remarque : Les étapes détaillées de comment l'authentification Kerberos s'effectue n'est pas incluse ici. Pour plus d'informations sur le fonctionne de l'authentification Kerberos, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://technet.Microsoft.com/en-us/library/cc758557.aspx
IIS écrit ensuite l'entrée suivante dans le journal IIS :

<Date> <Time>W3SVC<ID> <serverIP> /time.asp GET - domaine\utilisateur 80 <clientIP>Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1) 200 0 0</clientIP> </serverIP> </ID></Time></Date>

Scénario 2 - négociation du protocole

Dans le scénario dans lequel IIS est configuré pour prendre en charge uniquement le protocole Negotiate plutôt que le protocole Negotiate et le protocole NTLM, le flux de demande et la réponse est la même. L'enregistrement dans le journal IIS est également identique. La différence réside dans la réponse initiale IIS met à la demande anonyme à partir du navigateur. Dans ce cas, IIS envoie uniquement l'en-tête Negotiate :

HTTP: Réponse, HTTP/1.1,
Code d'état = 401
ProtocolVersion: HTTP/1.1
StatusCode : 401, non autorisé
Raison : non autorisé
ContentLength : 1656
ContentType : text/html
Serveur : Microsoft-IIS/6.0
WWWAuthenticate : négocier

Authentification NLTM

Voici un exemple de scénario dans lequel IIS est configuré pour prendre en charge uniquement le protocole NTLM. Dans IIS 6.0 et versions antérieures, vous devez pour cela avoir la clé de métabase NTAuthenticationProviders « NTLM » la valeur. Dans IIS 7.0 et versions ultérieures, seul le protocole NTLM doit être répertorié en tant que fournisseur dans la section <windowsAuthentication>.

Là encore, Internet Explorer n'inclut pas les informations d'authentification dans la première demande sur une nouvelle connexion :</windowsAuthentication>

HTTP: Demande GET /
Commande : obtenir ProtocolVersion: HTTP/1.1
Accepter : image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, * / *
Accept-Language : en-us
Accepter-Encoding : gzip, deflate
UserAgent : Mozilla/4.0 (compatible ; MICROSOFT INTERNET EXPLORER 6.0 ; Windows NT 5.1)
Hôte : www.kerberos.com
Connexion : Keep-Alive

Si le serveur IIS n'est pas configuré pour prendre en charge l'authentification anonyme, le serveur renvoie un état 401.2 qui indique au client que le client n'est pas autorisé. Ainsi que l'état d'erreur, le serveur envoie également une liste des protocoles d'authentification que le serveur prend en charge. Les en-têtes de réponse qu'IIS renvoie dans ce scénario NTLM uniquement ressembler à ceci :

HTTP: Code d'état réponse, HTTP/1.1 = 401
ProtocolVersion: HTTP/1.1
StatusCode : 401, non autorisé
Raison : non autorisé
ContentLength : 1656
ContentType : text/html
Serveur : Microsoft-IIS/6.0
WWWAuthenticate : NTLM

IIS écrit ensuite une entrée semblable au suivant dans le journal IIS :

<Date> <Time>W3SVC<ID> <serverIP> obtenir / - 80 - <clientIP>401 2 2148074254 Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1)</clientIP> </serverIP> </ID></Time></Date>

Lorsque le client reçoit notification du serveur que le serveur prend en charge le protocole NTLM, le client envoie à nouveau la demande. Le client inclut les informations d'authentification dans un en-tête d'autorisation :

HTTP: Demande GET /
Commande : obtenir
URI: /
ProtocolVersion: HTTP/1.1
Accepter : image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, * / *
Accept-Language : en-us
Accepter-Encoding : gzip, deflate
UserAgent : Mozilla/4.0 (compatible ; MICROSOFT INTERNET EXPLORER 6.0 ; Windows NT 5.1)
Hôte : www.kerberos.com
Connexion : Keep-Alive
Autorisation : NTLM TlRMTVNTUAABAAAAB7IIoAcABwssAoAAAACAAIACAAAABWQU5XSU5YUFZBTkRBTkE =

Dans le cadre de la communication NTLM, le serveur reconnaît que le client a envoyé les informations d'authentification. Toutefois, le serveur doit au client d'envoyer plus d'informations. Par conséquent, le serveur renvoie une autre réponse 401 semblable au suivant :

HTTP: Code d'état réponse, HTTP/1.1 = 401
ProtocolVersion: HTTP/1.1
StatusCode : 401, non autorisé
Raison : non autorisé
ContentLength : 1539
ContentType : text/html
Serveur : Microsoft-IIS/6.0
NTLMAuthorization : NTLM
TlRMTVNTUAACAAAADgAOADgAAAAFgomiRCfS+kdwvJ0MAAAAAAAAAAJYAlgBGAAAABQLODgAAAA9WAEEATgBEAEEATgBBAAIADgBWAEEATgBEAEEATgBBAAEAFgBXAEkATgBEAEss8AVwBTADIAMAAwADMABAAWAHYAYQBuAGQAYQBuAGEALgBjAG8AbQADAC4AVwBpAG4AZABvAHcAcwAyADAAMAAzAC4AdgBhAG4AZA

IIS puis écrit une entrée dans le journal IIS semblable au suivant :

<Date> <Time>W3SVC<ID> <serverIP> obtenir / - 80 - <clientIP>Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1) 401 1 0</clientIP> </serverIP> </ID></Time></Date>

L'état 401.1 IIS envoie indique au client que le client doit fournir le reste des informations d'authentification valide. Le client reçoit ce défi. Le client envoie ensuite une demande plus semblable au suivant :

HTTP: Demande GET /
Commande : obtenir
URI: /
ProtocolVersion: HTTP/1.1
Accepter : image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, * / *
Accept-Language : en-us
Accepter-Encoding : gzip, deflate
UserAgent : Mozilla/4.0 (compatible ; MICROSOFT INTERNET EXPLORER 6.0 ; Windows NT 5.1)
Hôte : www.kerberos.com
Connexion : Keep-Alive
NTLMAuthorization : NTLM
TlRMTVNTUAADAAAAGAAYAHgAAAAYABgAkAAAAA4ADgBAAAAAGgAaAE4AAAAQABAAaAAAAAAAAACoAAAABYKIoFYAQQBOAEQAQQBOAEEAQQBkAG0AaQBuAGkAcwB0AwwHIAYQB0AG8AcgBWAEEATgBXAEkATgBYAFAAo53RVbJ / EucAAAAAAAAAAAAAAAAAAAAAcWyNNNlQLNMC3EVd + aoZCA9lkh8dVY/M

Lorsque le serveur IIS reçoit cette demande, le serveur IIS communique avec un contrôleur de domaine pour effectuer la demande d'authentification. Lorsque la demande du client d'authentification est confirmée, IIS envoie une réponse semblable au suivant :

HTTP: Code d'état réponse, HTTP/1.1 = 200
ProtocolVersion: HTTP/1.1
StatusCode : 200 Ok
Raison: OK
Serveur : Microsoft-IIS/6.0
X-alimenté par : ASP.NET
ContentLength : 19
ContentType : text/html
Cache-control : private

Remarque : Les étapes détaillées de comment l'authentification NTLM s'effectue n'est pas incluse ici. Pour plus d'informations sur le fonctionne de l'authentification NTLM, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://msdn.Microsoft.com/en-us/library/bb643328.aspx
Une fois que IIS envoie cette réponse, IIS écrit l'entrée associée suivante dans le journal IIS :

<Date> <Time>W3SVC<ID> <serverIP> /time.asp GET - domaine\utilisateur 80 <clientIP>Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1) 200 0 0</clientIP> </serverIP> </ID></Time></Date>

Références

Pour plus d'informations sur comment IIS authentifie les clients de navigateur, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
264921Comment IIS authentifie les clients de navigateur
Pour plus d'informations sur comment faire pour résoudre les problèmes liés à Kerberos dans IIS, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
326985Comment résoudre les problèmes liés à Kerberos dans IIS
Pour plus d'informations sur comment modifier la propriété de métabase AuthPersistence pour contrôler l'authentification, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
318863Comment modifier la propriété de métabase AuthPersistence pour contrôler l'authentification
Pour plus d'informations sur un problème de ralentissement des performances qui se produit lorsque vous utilisez l'authentification Windows intégrée IIS 6.0, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
917557CORRECTIF : Vous pouvez rencontrer ralentissement des performances lorsque vous utilisez l'authentification intégrée Windows avec le protocole d'authentification Kerberos dans IIS 6.0
Pour plus d'informations sur Microsoft NTLM, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://msdn.Microsoft.com/en-us/library/bb643328.aspx
Pour plus d'informations sur Microsoft Kerberos, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://msdn.Microsoft.com/en-us/library/aa378747 (CSS) .aspx
Pour plus d'informations sur l'authentification Windows intégrée IIS, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://technet2.Microsoft.com/WindowsServer/en/Library/80c79abb-348d-467a-92fe-825e696be3351033.mspx?mfr=true
Pour plus d'informations sur la propriété de métabase NTAuthenticationProviders dans IIS 6.0, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://www.Microsoft.com/technet/prodtechnol/windowsserver2003/library/IIS/ea7cd846-33da-49c9-927f-d4e76d6309ac.mspx?mfr=true
Pour plus d'informations sur la <windowsAuthentication>propriété de configuration dans IIS 7.0, reportez-vous au site Web suivant :</windowsAuthentication>
http://www.IIS.NET/ConfigReference/System.WebServer/Security/Authentication/windowsAuthentication

Propriétés

Numéro d'article: 969060 - Dernière mise à jour: vendredi 6 juillet 2012 - Version: 1.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Internet Information Services 7.0
  • Microsoft Internet Information Services 5.0
  • Microsoft Internet Information Services 5.1
  • Microsoft Internet Information Services 6.0
Mots-clés : 
kbexpertiseinter kbexpertiseadvanced kbhowto kbsurveynew kbmt KB969060 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 969060
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com