ACCÈS REFUSÉ - La délégation contrainte pour CIFS échoue

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 à fournir des informations d'identification et finissent par rencontrer une erreur d'accès refusé. Dans l'article d'aujourd'hui, nous présenterons quelques scénarios de cas, identifierons la cause, puis fournirons les solutions possibles au problème de l'échec de la délégation contrainte pour CIFS avec l'erreur ACCESS_DENIED dans Windows 10.

Common Internet File System (CIFS) est un protocole de partage de fichiers qui fournit un mécanisme ouvert et multiplateforme pour demander des fichiers et des services de serveur réseau. CIFS  est basé sur la version améliorée du protocole Microsoft Server Message Block (SMB) pour le partage de fichiers sur Internet et intranet.

La délégation contrainte pour CIFS échoue dans Windows

La délégation contrainte pour CIFS échoue dans Windows

Vous pouvez rencontrer ce problème si l'utilisateur est invité à fournir des informations d'identification et que l'accès échoue finalement avec une erreur d'accès refusé basée sur les trois scénarios suivants.

Scénario 1(Scenario 1)

  • Le site Web IIS est configuré avec le répertoire de base 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 accédant à ce partage s'exécute sous l'identité du compte de service.
  • Le compte de domaine est approuvé pour la délégation du service CIFS sur le serveur de fichiers.

Scénario 2(Scenario 2)

  • L'application Web tente d'accéder à un serveur de fichiers en tant qu'utilisateur.
  • 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 du service CIFS sur le serveur de fichiers.
  • La délégation contrainte configurée pour CIFS est configurée sur le compte de service pour le serveur de fichiers.

Scénario 3(Scenario 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(Service) est approuvé pour la délégation et configuré pour la délégation CIFS pour le serveur de fichiers.

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

Pour résoudre ce problème, Microsoft propose deux solutions de contournement.

Solution 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 :

  • Cliquez sur Start > Administrative Tools > Utilisateurs et ordinateurs Active Directory(Active Directory Users and Computers) .
  • Développez(Expand) le domaine, puis développez le dossier Ordinateurs .(Computers)
  • Dans le volet de droite, cliquez avec le bouton droit sur le nom de l'ordinateur du serveur Web, sélectionnez Propriétés(Properties) , puis cliquez sur l'   onglet Délégation .(Delegation)
  • Cochez la  case Faire confiance à cet ordinateur pour la délégation aux services spécifiés uniquement(Trust this computer for delegation to specified services only) .
  • Assurez-vous que  l'option Utiliser uniquement Kerberos(Use Kerberos only)  est sélectionnée, puis cliquez sur  OK .
  • Cliquez sur le  bouton Ajouter(Add button) .
  • Dans la  boîte de dialogue Ajouter des (Add) services  , cliquez sur  Utilisateurs ou Ordinateurs(Users or Computers) , puis recherchez ou entrez le nom du serveur de fichiers qui recevra les informations d'identification de l'utilisateur d' IIS .
  • Cliquez sur  OK .
  • Dans la  liste Services disponibles(Available)  , sélectionnez le  service CIFS .
  • Cliquez sur  OK .

Solution de contournement 2

Cette solution de contournement n'est pas recommandée(not recommended) car elle nécessite  Utiliser(Use) n'importe quelle délégation de protocole d'authentification sur le compte d'ordinateur. Si l'  option Utiliser n'importe quel protocole d'authentification(Use any authentication protocol)  est sélectionnée, le compte utilise la délégation contrainte avec transition de protocole.

Si vous devez utiliser l'identité des applications en tant que compte de service et/ou compte de domaine, procédez comme suit :

Étape 1(Step 1)

  • Cliquez sur Démarrer(Start )Administrative Tools > Utilisateurs et ordinateurs Active Directory(Active Directory Users and Computers) .
  • Développez(Expand) le domaine, puis développez le dossier Ordinateurs .(Computers)
  • Dans le volet de droite, cliquez avec le bouton droit sur le nom de l'ordinateur du serveur Web, sélectionnez Propriétés(Properties) , puis cliquez sur l'   onglet Délégation .(Delegation)
  • Cochez la  case Faire confiance à cet ordinateur pour la délégation aux services spécifiés(Trust this computer for delegation to specified services) uniquement.
  • Assurez-vous que  Utiliser n'importe quel protocole d'authentification(Use any authentication protocol) est sélectionné.
  • Cliquez sur OK .
  • Cliquez sur le  bouton Ajouter(Add button) .
  • Dans la  boîte de dialogue Ajouter des (Add) services  , cliquez sur  Utilisateurs ou Ordinateurs(Users or Computers) , puis recherchez ou entrez le nom du serveur de fichiers qui recevra les informations d'identification de l'utilisateur d' IIS .
  • Cliquez sur  OK .
  • Dans la  liste Services disponibles(Available)  , sélectionnez le service CIFS(CIFS service) .
  • Cliquez sur  OK .

Étape 2(Step 2)

  • Dans le volet de gauche, développez le dossier Utilisateurs.
  • Dans le volet de droite, cliquez avec le bouton droit sur le compte de service qui correspond à l'identité du pool d'applications, sélectionnez  Propriétés(Properties) , puis cliquez sur l'   onglet Délégation .(Delegation)
  • Cochez la  case Faire confiance à cet ordinateur pour la délégation aux services spécifiés uniquement(Trust this computer for delegation to specified services only) .
  • Assurez-vous que  Utiliser uniquement Kerberos(Use Kerberos only) est sélectionné.
  • Cliquez sur OK .
  • Cliquez sur le  bouton Ajouter(Add button) .
  • Dans la boîte de dialogue Ajouter des (Add) services  , cliquez sur  Utilisateurs ou Ordinateurs(Users or Computers) , puis recherchez ou entrez le nom du serveur de fichiers qui recevra les informations d'identification de l'utilisateur d' IIS .
  • Cliquez sur  OK .
  • Dans la  liste Services disponibles(Available)  , sélectionnez le service CIFS(CIFS service) .
  • Cliquez sur  OK .

J'espère que ce message vous aidera.(Hope this post helps.)



About the author

Je suis un ingénieur windows,ios,pdf,erreurs,gadgets avec plus de 10 ans d'expérience. J'ai travaillé sur de nombreuses applications et frameworks Windows de haute qualité tels que OneDrive for Business, Office 365, etc. Mes travaux récents ont inclus le développement du lecteur pdf pour la plate-forme Windows et travaillé à rendre les messages d'erreur plus clairs pour les utilisateurs. De plus, je suis impliqué dans le développement de la plate-forme ios depuis quelques années maintenant et je connais très bien ses fonctionnalités et ses particularités.



Related posts