From 6796e899e67298dda889959835175b3ccda7a44a Mon Sep 17 00:00:00 2001 From: Radek Zikmund <32671551+rzikm@users.noreply.github.com> Date: Wed, 4 Sep 2024 16:11:25 +0200 Subject: [PATCH 1/4] Mention gss-ntlmssp package for NTLM on Linux Closes https://github.com/dotnet/runtime/issues/101058 --- xml/System.Net/NetworkCredential.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xml/System.Net/NetworkCredential.xml b/xml/System.Net/NetworkCredential.xml index 49c1fbb8843..316f5609110 100644 --- a/xml/System.Net/NetworkCredential.xml +++ b/xml/System.Net/NetworkCredential.xml @@ -79,6 +79,9 @@ ## Remarks The class is a base class that supplies credentials in password-based authentication schemes such as basic, digest, NTLM, and Kerberos. Classes that implement the interface, such as the class, return objects. +> [!NOTE] +> On Linux platforms, use of NTLM authentication may require installing the NTLM plugin for the GSSAPI layer used by the implemention. On Ubuntu distributions, the package is called `gss-ntlmssp`. + This class does not support public key-based authentication methods such as Secure Sockets Layer (SSL) client authentication. From 1379295093fa6d5f96c9518c8de8fab9fc9b2a39 Mon Sep 17 00:00:00 2001 From: Radek Zikmund <32671551+rzikm@users.noreply.github.com> Date: Tue, 10 Sep 2024 10:02:39 +0200 Subject: [PATCH 2/4] Code review feedback --- xml/System.Net/NetworkCredential.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xml/System.Net/NetworkCredential.xml b/xml/System.Net/NetworkCredential.xml index 316f5609110..03f65357c6a 100644 --- a/xml/System.Net/NetworkCredential.xml +++ b/xml/System.Net/NetworkCredential.xml @@ -80,7 +80,9 @@ The class is a base class that supplies credentials in password-based authentication schemes such as basic, digest, NTLM, and Kerberos. Classes that implement the interface, such as the class, return objects. > [!NOTE] -> On Linux platforms, use of NTLM authentication may require installing the NTLM plugin for the GSSAPI layer used by the implemention. On Ubuntu distributions, the package is called `gss-ntlmssp`. +> On Unix platforms, use of NTLM authentication may require installing the NTLM plugin for the GSSAPI layer used by the implemention. On Ubuntu distributions, the package is called `gss-ntlmssp`. Alternatively, applications may opt in for a managed implementation of NTLM by setting the `System.Net.Security.UseManagedNtlm` AppContext switch. +> +> On Windows, NTLM and Negotiate (Kerberos) authentication always depend on GSSAPI of the operating system. This class does not support public key-based authentication methods such as Secure Sockets Layer (SSL) client authentication. From c49061eb05f37523bac9cbffbf3362db3bc3d5cf Mon Sep 17 00:00:00 2001 From: Radek Zikmund <32671551+rzikm@users.noreply.github.com> Date: Tue, 10 Sep 2024 19:40:47 +0200 Subject: [PATCH 3/4] Code review feedback --- xml/System.Net/NetworkCredential.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xml/System.Net/NetworkCredential.xml b/xml/System.Net/NetworkCredential.xml index 03f65357c6a..1997524bbbc 100644 --- a/xml/System.Net/NetworkCredential.xml +++ b/xml/System.Net/NetworkCredential.xml @@ -80,7 +80,7 @@ The class is a base class that supplies credentials in password-based authentication schemes such as basic, digest, NTLM, and Kerberos. Classes that implement the interface, such as the class, return objects. > [!NOTE] -> On Unix platforms, use of NTLM authentication may require installing the NTLM plugin for the GSSAPI layer used by the implemention. On Ubuntu distributions, the package is called `gss-ntlmssp`. Alternatively, applications may opt in for a managed implementation of NTLM by setting the `System.Net.Security.UseManagedNtlm` AppContext switch. +> On Unix platforms, use of NTLM authentication may require installing the NTLM plugin for the GSSAPI layer used by the implemention. On Ubuntu distributions, the package is called `gss-ntlmssp`. Alternatively, applications may opt in for a managed implementation of NTLM by setting the `_UseManagedNtlm` .csproj property (.NET 9+ only). > > On Windows, NTLM and Negotiate (Kerberos) authentication always depend on GSSAPI of the operating system. From 465d954155a6b31df77854183b3ca1982c01b70b Mon Sep 17 00:00:00 2001 From: Radek Zikmund <32671551+rzikm@users.noreply.github.com> Date: Wed, 11 Sep 2024 08:30:57 +0200 Subject: [PATCH 4/4] Update NetworkCredential.xml --- xml/System.Net/NetworkCredential.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xml/System.Net/NetworkCredential.xml b/xml/System.Net/NetworkCredential.xml index 1997524bbbc..872db3610c5 100644 --- a/xml/System.Net/NetworkCredential.xml +++ b/xml/System.Net/NetworkCredential.xml @@ -80,7 +80,7 @@ The class is a base class that supplies credentials in password-based authentication schemes such as basic, digest, NTLM, and Kerberos. Classes that implement the interface, such as the class, return objects. > [!NOTE] -> On Unix platforms, use of NTLM authentication may require installing the NTLM plugin for the GSSAPI layer used by the implemention. On Ubuntu distributions, the package is called `gss-ntlmssp`. Alternatively, applications may opt in for a managed implementation of NTLM by setting the `_UseManagedNtlm` .csproj property (.NET 9+ only). +> On Unix platforms, use of NTLM authentication may require installing the NTLM plugin for the GSSAPI layer used by the implemention. On Ubuntu distributions, the package is called `gss-ntlmssp`. Alternatively, applications may opt in for a managed implementation of NTLM by setting the `_UseManagedNtlm` .csproj property (.NET 9+ only), or setting the `System.Net.Security.UseManagedNtlm` AppContext switch. > > On Windows, NTLM and Negotiate (Kerberos) authentication always depend on GSSAPI of the operating system.