Skip to content

HTTPS and NTLM authentication throw PlatformNotSupportedException #28532

Description

@davidsh

Split from #25827

As of .NET Core 2.1, the default HTTP stack is based on SocketsHttpHandler. SocketsHttpHandler uses the GSSAPI for handling the HTTP AUTH scheme of 'NTLM' when all the required GSSAPI packages are installed including 'gss-ntlmssp' (which directly supports NTLM authentication). See related issue #28530.

Currently when HttpClient tries to authenticate to a server over TLS (HTTPS) that provides a single 'Www-Authenticate: NTLM' scheme, it throw an exception similar to this:

Unhandled Exception: System.PlatformNotSupportedException: No support for channel binding on operating systems other than Windows.
at System.Net.Security.NegotiateStreamPal.InitializeSecurityContext(SafeFreeCredentials credentialsHandle, SafeDeleteContext& securityContext, String spn, ContextFlagsPal requestedContextFlags, SecurityBuffer[] inSecurityBufferArray, SecurityBuffer outSecurityBuffer, ContextFlagsPal& contextFlags)

This issue will address ways of removing that exception and providing the proper client-side channel binding support.

Metadata

Metadata

Assignees

Labels

bugos-linuxLinux OS (any supported distro)

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions