Erreur « Une réponse qui ne provient pas de la Gestionnaire de flux de travail » a été retournée dans SharePoint Server 2016

Symptômes

Lorsque vous configurez SharePoint Server 2016 sur Windows Server 2016 avec un seul serveur WFM, puis installez et configurez un gestionnaire de flux de travail avec SharePoint, en l’inscrivant pour utiliser « SP-WorkflowService », les flux de travail utilisant SharePoint Designer échouent avec l’erreur suivante :

Microsoft.Workflow.Client.AuthenticationException: A response was returned that did not come from the Workflow Manager. Status code = 401:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>401 - Unauthorized: Access is denied due to invalid credentials.</title>
<style type="text/css">
<!--
body{marg

Cause

L’authentification « Anonyme » a été désactivée sur le serveur WFM de votre batterie de serveurs DEV.

Résolution

La réactivation de l’authentification « anonyme » doit résoudre le problème.

Informations supplémentaires

Comment nous avons réduit le problème

Nous avons utilisé la capacité de Fiddler à agir en tant que proxy et à écouter les appels de point de terminaison entre SharePoint et Gestionnaire de flux de travail. Pour plus d’informations, consultez Débogage de flux de travail SharePoint.

Fiddler a révélé que nous échouions lors de la mise en place/mise à jour des informations d’étendue pour le flux de travail donné et son URL dans WFM.

Client (SharePoint) Request
=======================

PUT http://<WFMENDPOINT>/SharePoint/default/23fc1ff1-0a17-41dd-862a-6d7b13be1435  HTTP/1.1
Host: <WFMENDPOINT>
<ScopeInfo xmlns="http://schemas.microsoft.com/workflow/2012/xaml/activities" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><DefaultWorkflowConfiguration><appSettings><AppSetting><Key>Microsoft.SharePoint.ActivationProperties.SiteId</Key><Value>23fc1ff1-0a17-41dd-862a-6d7b13be1435</Value></AppSetting><AppSetting><Key>Microsoft.SharePoint.ActivationProperties.Host</Key><Value><SITE URL></Value></AppSetting><AppSetting><Key>Microsoft.SharePoint.ActivationProperties.HostUri</Key><Value>http://<SITE URL> </Value></AppSetting></appSettings></DefaultWorkflowConfiguration><Description>23fc1ff1-0a17-41dd-862a-6d7b13be1435</Description></ScopeInfo>


Server (WFM) Response
====================

HTTP/1.1 401 Unauthorized
Content-Type: text/html
Server: Microsoft-IIS/10.0
<h2>401 - Unauthorized: Access is denied due to invalid credentials.</h2>
  <h3>You do not have permission to view this directory or page using the credentials that you supplied.</h3>

Remarque HTTP/1.1 401 Non autorisé sous la réponse du serveur.

En condition de fonctionnement , nous mettons à jour les informations d’étendue en tant que telles.

Client (SharePoint) Request
======================

PUT http://wfm.contoso.com:12291/SharePoint/default/09d8c9b6-1994-4dad-bf46-cf5de701c0c8  HTTP/1.1
Host: wfm.contoso.com:12291
<ScopeInfo xmlns="http://schemas.microsoft.com/workflow/2012/xaml/activities" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><DefaultWorkflowConfiguration><appSettings><AppSetting><Key>Microsoft.SharePoint.ActivationProperties.SiteId</Key><Value>09d8c9b6-1994-4dad-bf46-cf5de701c0c8</Value></AppSetting><AppSetting><Key>Microsoft.SharePoint.ActivationProperties.Host</Key><Value>sp</Value></AppSetting><AppSetting><Key>Microsoft.SharePoint.ActivationProperties.HostUri</Key><Value>http://sp</Value></AppSetting></appSettings></DefaultWorkflowConfiguration><Description>09d8c9b6-1994-4dad-bf46-cf5de701c0c8</Description></ScopeInfo>

Server (WFM) Response
====================

HTTP/1.1 201 Created
Location: http://wfm.contoso.com:12291/SharePoint/default/09d8c9b6-1994-4dad-bf46-cf5de701c0c8
Server: Microsoft-IIS/10.0

Remarque HTTP/1.1 201 Créé sous la réponse du serveur.

Nous avons capturé des traces ETL pour lire les activités internes du gestionnaire de flux de travail lors de la publication du flux de travail. La condition d’échec a révélé que la requête n’atteignait même pas WFM en interne.

En condition opérationnelle, nous mettons à jour les informations d’étendue en tant que telles.

WFM Server Internal Activities 
=========================

The gateway received an HTTP request. Method: PUT, Uri: http://wfm.contoso.com:12291/SharePoint/default/09d8c9b6-1994-4dad-bf46-cf5de701c0c8, Scope path: 
Gateway received request details: Method: PUT, RequestUri: 'http://wfm.contoso.com:12291/SharePoint/default/09d8c9b6-1994-4dad-bf46-cf5de701c0c8', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
{
 Accept: application/xml
 Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6ImRWaWQ1MFpHYzVuLWh1TXdEc1V3bVdCQ2hZSSJ9.eyJhdWQiOiIwMDAwMDAwNS0wMDAwLTAwMDAtYzAwMC0wMDAwMDAwMDAwMDAvd2ZtLmNvbnRvc28uY29tOjEyMjkxQGVhZWQ2MzJkLTEyZjMtNDNlNS1iYmU5LTkwMDhjOGU3YWIxYyIsImlzcyI6IjAwMDAwMDAzLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMEBlYWVkNjMyZC0xMmYzLTQzZTUtYmJlOS05MDA4YzhlN2FiMWMiLCJuYmYiOiIxNTY0MDMyNTMwIiwiZXhwIjoiMTU2NDE2MjEzMCIsIm5hbWVpZCI6IjAwMDAwMDAzLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMEBlYWVkNjMyZC0xMmYzLTQzZTUtYmJlOS05MDA4YzhlN2FiMWMifQ.gIvnI1f9EpgCaZMZ7lp-ryq9u_xJ5eVCPv-EGzqBjU_99anCgw64HsU8wCmtvYarj8Qt6XzjrNbY1eXIXLcSTyLsiww26w-OJIxYbKZgX0wvTehyzgY3k_LdkVOae--RkAZ5jRTSZ2hr_nTMbTNj0kJ8ZmLYkSEqhuuZHtqXLcaOSXXQ0xPosBElr_U513P7n8meFfty624l_WcB99wtCPAmA8_kPNhZp6vrcxVuj6vkqz7lcCzTZY0d2qcDGuW1d5DsZwcNKQ7SSdVC1tbK7VYNDi5qdHSBaaZrHWn70FwMdt_nCRLDpEbd8K2tn6w6Ssnbtdb697TqeIRKsyZ_Ew
 Expect: 100-continue
 Host: wfm.contoso.com:12291
 User-Agent: Microsoft-WF/1.0.1
 E2EActivity: nvOccj36scBdKMCu3bsJLQ==
 client-request-id: 729cf39e-fa3d-c0b1-5d28-c0aeddbb092d
 Content-Length: 636
 Content-Type: application/xml
}
Start retrieving scope security settings from database.
Creating Scope /SharePoint/default/09d8c9b6-1994-4dad-bf46-cf5de701c0c8
Successfully created scope /SharePoint/default/09d8c9b6-1994-4dad-bf46-cf5de701c0c8
Workflow Manager frontend completed HTTP request successfully and is <mark>returning status code 201 (Created).
Gateway sending HTTP response: StatusCode: 201, ReasonPhrase: 'Created', Version: 1.1, Content: <null>, Headers:
{
 Location: http://wfm.contoso.com:12291/SharePoint/default/09d8c9b6-1994-4dad-bf46-cf5de701c0c8
 Server: Microsoft-WF/1.0.1
}

Remarque « Étendue créée avec succès /SharePoint/default/09d8c9b6-1994-4dad-bf46-cf5de701c0c8 » et « retour du code status 201 (Créé) » ci-dessus.

Capture d’écran montrant la sortie.

Cela a prouvé que la requête atteignait WFM serveur, mais qu’elle n’allait pas plus loin dans SB ou back-end. Par conséquent, le composant en question était IIS. Nous avons capturé les WFM de connexion IIS en interne lors de la publication du flux de travail. Il a révélé qu’IIS a des événements en fait lors de la publication.

2019-07-25 05:28:49 192.168.2.104 PUT /$Scope - 12291 - 192.168.2.102 Microsoft-WF/1.0.1 - 401 0 0 1477
2019-07-25 05:28:52 192.168.2.104 PUT /$Scope - 12291 - 192.168.2.102 Microsoft-WF/1.0.1 - 201 0 0 562
2019-07-25 05:28:52 192.168.2.104 PUT /$Scope - 12291 - 192.168.2.102 Microsoft-WF/1.0.1 - 201 0 0 78
2019-07-25 05:28:53 192.168.2.104 PUT /$Activities/WorkflowXaml_1a80aab2_6f61_4cc9_a8ca_47b599ceb796 $overwriteXClass=true 12291 - 192.168.2.102 Microsoft-WF/1.0.1 - 201 0 0 1558
2019-07-25 05:29:05 192.168.2.104 PUT /$Workflows/607e3d78-07fd-4b3b-99c1-2197768e7db1 - 12291 - 192.168.2.102 Microsoft-WF/1.0.1 - 201 0 0 6741
2019-07-25 05:29:06 192.168.2.104 GET /$Scope - 12291 - 192.168.2.102 Microsoft-WF/1.0.1 - 200 0 0 15

Sur la base de l’erreur « Vous n’avez pas l’autorisation d’afficher ce répertoire ou cette page à l’aide des informations d’identification que vous avez fournies », nous avons exploré les autorisations du serveur virtuel IIS « Site de gestion des flux de travail » sur WFM dans notre labo. « Anonyme » et « Authentification Windows » sont définis comme activés. La désactivation de l’authentification « Anonyme » a instantanément reproduit l’erreur.

Si vous utilisez l’authentification par revendications (revendications Windows, authentification par formulaire ou fournisseur d’identité approuvé), l’application est configurée pour l’authentification par formulaire dans le web.config, tout en garantissant que l’authentification anonyme et l’authentification par formulaire sont activées dans la configuration IIS.

Par défaut, nous utilisons l’authentification par revendication Windows à partir de SP 2013 et WFM > communication du fournisseur de services se produit sur Oauth. Nous avons identifié que l’authentification « anonyme » a été désactivée sur WFM serveur de votre batterie de serveurs DEV. Son activation a résolu le problème. Nous avons pu publier et exécuter les workflows avec succès.

Encore besoin d’aide ? Accédez au site de la Communauté SharePoint.