Partager via


La délégation contrainte pour CIFS échoue avec ACCESS_DENIED erreur

Cet article vous aide à corriger une erreur d’accès refusée qui se produit lorsque vous accédez à un service qui utilise des partages réseau sur un serveur de niveau intermédiaire.

Numéro de base de connaissances d’origine : 2602377

Symptômes

Lors de l’accès à un service qui utilise des partages réseau sur un serveur de niveau intermédiaire, les utilisateurs sont invités à entrer des informations d’identification et à rencontrer une erreur d’accès refusée .

Exemples de scénarios

Scénario 1

L’utilisateur est invité à entrer des informations d’identification et l’accès échoue finalement avec une erreur d’accès refusée si les conditions suivantes sont remplies :

  • Le site web IIS est configuré avec le répertoire d’accueil pointant vers le partage distant à l’aide de l’authentification directe et de la délégation contrainte configurée pour CIFS.
  • Le pool d’applications IIS qui accède à ce partage s’exécute sous l’identité du compte de service.
  • Le compte de domaine est approuvé pour la délégation pour le service cifs sur le serveur de fichiers.
  • Le serveur de fichiers et le serveur web exécutent un système d’exploitation répertorié dans la section S’applique à.

Scénario 2

  • L’application web tente d’accéder à un serveur de fichiers en tant qu’utilisateur.
  • Pool d’applications IIS qui accède à ce partage s’exécute sous l’identité du compte de service. Le compte de domaine est approuvé pour la délégation pour le service cifs sur le serveur de fichiers.
  • La délégation contrainte configurée pour CIFS est configurée sur le compte de service du serveur de fichiers.
  • Les types de serveurs de fichiers et de serveur web sont répertoriés dans la section S’applique à.

Scénario 3 :

  • Toute application côté serveur accessible à partir d’un client accède à des partages distants en tant qu’utilisateur.
  • L’application côté serveur s’exécute dans le contexte d’un compte de service.
  • Le compte de service est approuvé pour la délégation et configuré pour la délégation CIFS pour le serveur de fichiers.
  • Les types de serveurs de fichiers et de serveur web sont répertoriés dans la section S’applique à.

Cause

Cela a été identifié comme un problème entre MrxSmb 2.0 et Kerberos lorsque la délégation contrainte est impliquée.

Solution de contournement

Solution de contournement 1

Utilisez un compte d’ordinateur au lieu d’un compte de service comme identité pour les applications qui effectueront une délégation contrainte pour CIFS. Configurez la délégation contrainte lorsque le niveau fonctionnel du domaine est Windows Server 2003, Windows Server 2008 ou Windows Server 2008 R2.

Pour ce faire sur le contrôleur de domaine de votre domaine de serveurs web, procédez comme suit :

  1. Cliquez sur Démarrer, Outils d'administration, puis sur Utilisateurs et ordinateurs Active Directory.
  2. Développez le domaine, puis le dossier Ordinateurs.
  3. Dans le volet droit, cliquez avec le bouton droit sur le nom de l’ordinateur du serveur web, sélectionnez Propriétés, puis cliquez sur l’onglet Délégation.
  4. Activez la case à cocher Approuver cet ordinateur pour la délégation aux services spécifiés uniquement.
  5. Vérifiez que l’option Utiliser Kerberos est sélectionnée uniquement, puis cliquez sur OK.
  6. Cliquez sur le bouton Add . Dans la boîte de dialogue Ajouter des services, cliquez sur Utilisateurs ou ordinateurs, puis accédez au serveur de fichiers ou entrez le nom du serveur de fichiers qui recevra les informations d’identification de l’utilisateur à partir d’IIS. Cliquez sur OK.
  7. Dans la liste Services disponibles, sélectionnez le service CIFS. Cliquez sur OK.

Solution de contournement 2

Si vous devez utiliser l’identité des applications en tant que compte de service et/ou compte de domaine, utilisez la solution de contournement suivante.

Note

Cette solution de contournement n’est pas recommandée, car elle nécessite une délégation de protocole d’authentification sur le compte d’ordinateur. Si l’option Utiliser un protocole d’authentification est sélectionnée, le compte utilise la délégation contrainte avec la transition de protocole.

  1. Cliquez sur Démarrer, Outils d'administration, puis sur Utilisateurs et ordinateurs Active Directory.
  2. Développez le domaine, puis le dossier Ordinateurs.
  3. Dans le volet droit, cliquez avec le bouton droit sur le nom de l’ordinateur du serveur web, sélectionnez Propriétés, puis cliquez sur l’onglet Délégation.
  4. Activez la case à cocher Approuver cet ordinateur pour la délégation aux services spécifiés uniquement.
  5. Vérifiez que l’option Utiliser n’importe quel protocole d’authentification est sélectionnée, puis cliquez sur OK.
  6. Cliquez sur le bouton Add . Dans la boîte de dialogue Ajouter des services, cliquez sur Utilisateurs ou ordinateurs, puis accédez au serveur de fichiers ou entrez le nom du serveur de fichiers qui recevra les informations d’identification des utilisateurs à partir d’IIS. Cliquez sur OK.
  7. Dans la liste Services disponibles, sélectionnez le service CIFS. Cliquez sur OK.
  8. Dans le volet gauche, développez le dossier Utilisateurs.
  9. Dans le volet droit, cliquez avec le bouton droit sur le compte de service qui est l’identité du pool d’applications, sélectionnez Propriétés, puis cliquez sur l’onglet Délégation.
  10. Activez la case à cocher Approuver cet ordinateur pour la délégation aux services spécifiés uniquement.
  11. Vérifiez que l’option Utiliser Kerberos est sélectionnée uniquement, puis cliquez sur OK.
  12. Cliquez sur le bouton Add . Dans la boîte de dialogue Ajouter des services, cliquez sur Utilisateurs ou ordinateurs, puis accédez au serveur de fichiers ou entrez le nom du serveur de fichiers qui recevra les informations d’identification des utilisateurs à partir d’IIS. Cliquez sur OK.
  13. Dans la liste Services disponibles, sélectionnez le service CIFS. Cliquez sur OK.