Мне нужно добавить пользовательский заголовок для каждой полезной нагрузки, отправляемой одной из подключенных служб в моих проектах с конечной точкой HTTPS.Этот пользовательский заголовок будет служить аутентификацией для получателя.Как я могу это сделать?
Я пытался использовать System.ServiceModel.Channels.MessageHeader
и AddressHeader
безуспешно.С SoapUI добавление пользовательского заголовка в запрос работает нормально.
Этот метод аутентификации является новым для получателя.Как и конечная точка HTTPS.В предыдущем запросе я использовал Basic Http Authentication
с пользователем и паролем.Итак, я немного изменил это для поддержки кода привязки HTTPS:
BasicHttpsBinding basicAuthBinding = new BasicHttpsBinding(BasicHttpsSecurityMode.Transport);
basicAuthBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic;
EndpointAddress basicAuthEndpoint = new EndpointAddress("https://whatever");
MyConnectedService.MyOperationClient client = new MyConnectedService.MyOperationClient(basicAuthBinding, basicAuthEndpoint);
client.ClientCredentials.UserName.UserName = "user";
client.ClientCredentials.UserName.Password = "pass";
client.send(payload);
Я думаю, что где-то здесь мне нужно добавить пользовательский заголовок.
С этим кодом яполучаю ожидаемое HTTP 401 - Unauthorized
.
Помощь оценена.
Заранее спасибо.