Вызов Service WCF с NTLM Auth из .net Core на LinuxC#

Место общения программистов C#
Ответить
Anonymous
 Вызов Service WCF с NTLM Auth из .net Core на Linux

Сообщение Anonymous »

Я не могу успешно вызвать службу WCF с аутентификацией NTLM из ядра .NET, работающего на поле Linux (контейнер Docker).
Тот же код отлично работает на Windows 10, хотя. < /p>

Что я сделал: < /p>


Добавить это в Configureservices < /code>: < /li>
< /ul>

AppContext.SetSwitch("System.Net.Http.UseSocketsHttpHandler", false);
< /code>


запустить apt-get-y install gss-ntlmssp < /code> < /li>
Это Код перед вызовом службы: < /li>
< /ul>

var client = new WcfServiceSoapClient();
client.Endpoint.Address = new EndpointAddress(settings.Uri);
client.ClientCredentials.Windows.AllowedImpersonationLevel = TokenImpersonationLevel.Impersonation;
client.ClientCredentials.Windows.ClientCredential = new NetworkCredential
{
Domain = settings.Domain,
UserName = settings.Username,
Password = settings.Password
};
var binding = (BasicHttpBinding)client.Endpoint.Binding;
binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Ntlm;
binding.Security.Transport.ProxyCredentialType = HttpProxyCredentialType.Ntlm;
< /code>

Как упомянуто -cs prettyprint-override ">System.ServiceModel.Security.MessageSecurityException: The HTTP request is unauthorized with client authentication scheme 'Ntlm'. The authentication header received from the server was 'NTLM, Negotiate'.
at System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult result)
at System.ServiceModel.Channels.ServiceChannel.SendAsyncResult.End(SendAsyncResult result)
at System.ServiceModel.Channels.ServiceChannel.EndCall(String action, Object[] outs, IAsyncResult result)
at System.ServiceModel.Channels.ServiceChannelProxy.TaskCreator.c__DisplayClass1_0.b__0(IAsyncResult asyncResult)
< /code>

Вопрос: почему он все еще терпит неудачу на Linux? < /p>

Подробнее здесь: https://stackoverflow.com/questions/561 ... e-on-linux
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»