L'authentification des certificats mutuels échoue avec l'erreur 403.16
Je suis à l'aide de Windows Server 2012 et IIS 8.5. J'ai configurer SSL pour le site web et les Paramètres SSL sont: Exiger Requis et Exiger des Certificats Client.
Le certificat du client que je suis de l'envoyer au serveur a été émis par une auto-signé de l'autorité (on l'a appelé MyCompany CA). MyCompany certificat d'autorité de certification a été installé avec succès dans le Compte d'Ordinateur Local - Autorités de Certification Racine approuvées. C'est la date d'expiration est 2039, le client date d'expiration du certificat.
Cependant, toute cette installation, j'obtiens une erreur 403.16 comme résultat. J'ai activé le suivi des demandes ayant Échoué Règles et a réussi à se connecter une fausse demande et a obtenu quelques détails supplémentaires à ce sujet:
52.- MODULE_SET_RESPONSE_ERROR_STATUS - Avertissement
ModuleName - IIS Web de Base
Notification - BEGIN_REQUEST
HttpStatus - 403
HttpReason - Interdit
HttpSubStatus - 16
ErrorCode - Un certificat de la chaîne de traitement, mais terminée par un certificat racine qui n'est pas approuvé par le fournisseur d'approbation. (0x800b0109)
ConfigExceptionInfo
J'ai vérifié plusieurs sites concernant le résultat 403.16 et le code d'erreur 0x800b0109 et tous les points à l'autorité de certification n'a été installé dans un Ordinateur Local Autorités de Certification Racine approuvées, mais ce n'est pas mon cas.
Merci!
source d'informationauteur Javier Holguera
Vous devez vous connecter pour publier un commentaire.
J'ai travaillé sur cette question depuis un long moment et finit trouvé!
Ajoutez une nouvelle clé dans HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
Nom de la valeur: ClientAuthTrustMode
Type de valeur: REG_DWORD
Données de la valeur: 2
De rafraîchissement de la page web, sélectionnez le certificat et regarder la magie se produire.
Recherche
À l'aide de Windows 8 et IIS 8.5 j'ai suivi les instructions ici http://itq.nl/testing-with-client-certificate-authentication-in-a-development-environment-on-iis-8-5/.
Certificats ont été créées à la bonne place et tout configuré dans IIS correctement, mais j'ai continué à obtenir 403.16 erreurs.
Après les nombreux articles MSDN et d'autres tentatives ont échoué, j'ai trouvé le paramètre de registre suivant.
Définir HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
Nom de la valeur: ClientAuthTrustMode
Type de valeur: REG_DWORD
Données de la valeur: 2
Définir HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL
Nom de la valeur: SendTrustedIssuerList
Type de valeur: REG_DWORD
Valeur de données: 0 (Faux, ou supprimer cette clé entièrement)
Voici plus d'informations sur ce paramètre spécifique (trouvé ici: http://technet.microsoft.com/en-us/library/hh831771.aspx)
Valeurs par défaut pour les Modes de Confiance
Il y a trois Authentification du Client la Confiance des Modes de prises en charge par le Schannel fournisseur. Le mode de confiance contrôle la validation de la chaîne de certificats du client est effectué et un système à l'échelle contrôlée par les REG_DWORD “ClientAuthTrustMode” sous HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\Schannel.
0 approbation de l'ordinateur (par défaut)
Nécessite que le client certificat est délivré par un certificat dans la Confiance des Émetteurs liste.
1 Exclusive De La Racine De Confiance
Exige qu'un certificat du client lié à un certificat racine contenue dans spécifiées par l'appelant de confiance de l'émetteur magasin. Le certificat doit également être émis par un émetteur dans la Confiance des Émetteurs liste
2 Exclusive de Confiance de l'AC
Exige qu'un certificat du client de la chaîne, soit d'une autorité de certification intermédiaire certificat ou certificat racine de l'appelant spécifié émetteur de confiance store.
Pour plus d'informations sur l'authentification d'échecs dus à la confiance des émetteurs des problèmes de configuration, voir l'article de Base de Connaissances 280256.
Espérons que ce travail pour vous.
J'ai essayé la solution proposée ci-dessus et il fonctionne très bien.
Une autre solution qui n'implique pas de modification du registre:
https://support.microsoft.com/en-us/help/2795828/lync-server-2013-front-end-service-cannot-start-in-windows-server-2012
Le point principal de cet article est de supprimer tous les non-signé les certificats de l'Ordinateur Local de Confiance dossier Racine.
Vous pouvez trouver tous les non-les certificats auto-signés en utilisant le script Powershell:
Déplacer les certs pour les Autorités de Certification Intermédiaires dossier de la console mmc.
J'ai dû redémarrer le serveur pour obtenir la ClientAuthTrustMode paramètre pour appliquer.