Модель параллелизма инспекторов сообщений WCF - PullRequest
0 голосов
/ 07 мая 2018

Я реализовал защиту на уровне сообщений, используя механизм инспектора сообщений в сервисе wcf.

На стороне клиента, в IClientMessageInspector.BeforeSendRequest я добавляю заголовок аутентификации. На стороне сервиса, в IDispatchMessageInspector.AfterReceiveRequest я проверяю заголовок аутентификации в сообщении. Если он не найден или, как и ожидалось, я выбрасываю SecurityException и пытаюсь зарегистрировать его в базе данных. Здесь начинается интересная часть. При входе в базу данных я пытаюсь снова прочитать этот веб-сервис (это веб-сервис, предоставляющий информацию о конфигурации). Здесь служба останавливается / блокируется. Я вижу, что сделан вызов для чтения конфигурации (при входе в базу данных), но я не получаю вызов от службы. Я постоянно получаю исключение тайм-аута каждый раз.

После небольшого поиска я наткнулся на этот пост, в котором упоминается, что инспекторы сообщений являются синхронными по своей природе. Если это так, как я могу достичь того, что я после?

...