J'ai une application qui héberge plusieurs services WCF. J'ai créé un ServiceAuthorizationManager personnalisé qui fonctionne parfaitement. J'inspecte quelques éléments sur le OperationContext.IncomingMessageHeaders pour obtenir un nom d'utilisateur et un mot de passe. C'était pour surmonter certaines limitations dans notre environnement qui ne nous permettraient pas d'utiliser ce qui a été construit dans la plate-forme. le gestionnaire crée un IPrincpal personnalisé, avec quelques objets personnalisés nécessaires, et le place sur le thread en cours d'exécution, pour une utilisation ultérieure dans la logique métier WCF. Cela fonctionne très bien.Utilisation du principal personnalisé dans Workflow
Le problème est que j'ai un service WCF qui est un flux de travail, et j'ai besoin d'utiliser le même mécanisme. Le gestionnaire est appelé correctement, mais lorsque l'exécution du currentPrincpal du thread n'est pas mon principal personnalisé, il s'agit d'un génériqueprincipal. L'analyse montre que l'exécution du workflow crée un thread et n'utilise pas le thread sur lequel l'appel WCF est entré.
Quelqu'un a-t-il rencontré ce problème, et y a-t-il de bonnes solutions?