Управление заголовком HTTP в WCF перед проверкой подлинности HTTP в HttpBinding
-
03-07-2019 - |
Вопрос
Это связано с этим вопросом
Я размещаю эту службу WCF на хосте пользовательских служб. IIS не вариант.
Есть ли способ внедрить HTTP " Аутентифицировать " заголовок в стеке сервера (если он отсутствует) на раннем этапе процесса запроса - так что пользователь по умолчанию может быть передан в процесс аутентификации / авторизации, который у меня есть для анонимных запросов?
Мне нужен СЕРВЕР, чтобы внедрить это на принимающей стороне - перед дальнейшей обработкой WCF ...
Я почти уверен, что смогу сделать это с помощью пользовательского BindingElement или путем расширения WebHttpBinding, но любые примеры или рекомендации будут с благодарностью. Я не могу найти никаких примеров ранних манипуляций с заголовком (предварительная аутентификация) в WCF.
Решение
Реализуя IDispatchMessageInspector, вы можете подключиться к конвейерной стороне сервера; и манипулировать сообщениями.
В методе AfterReceiveRequest вы вполне можете добавить в Request.Headers.
Оберните его атрибутом поведения и примените к своему сервису.
Другие советы
Я бы напечатал это, но это много. Так что вот хорошая ссылка. Р>
В блоге Авнера Каштана изложено, что я "думаю" ты ищешь. Надеюсь, это поможет!