Skip to content

Commit ddd0a9c

Browse files
author
Jan Jahoda
authored
Credential fixes - backport from .net 7 (#61114) (#61371)
1 parent dce795c commit ddd0a9c

3 files changed

Lines changed: 15 additions & 15 deletions

File tree

src/libraries/Common/tests/System/Net/Http/HttpClientHandlerTest.Authentication.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ public static IEnumerable<object[]> Authentication_TestData()
203203
{
204204
yield return new object[] { "Basic realm=\"testrealm\"", true };
205205
yield return new object[] { "Basic ", true };
206-
yield return new object[] { "Basic realm=withoutquotes", true };
206+
yield return new object[] { "Basic realm=PLACEHOLDERwithoutquotes", true };
207207
yield return new object[] { "basic ", true };
208208
yield return new object[] { "bAsiC ", true };
209209
yield return new object[] { "basic", true };

src/libraries/Common/tests/System/Net/Http/HttpClientHandlerTest.AutoRedirect.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -287,7 +287,7 @@ public async Task GetAsync_AllowAutoRedirectTrue_RedirectToUriWithParams_Request
287287
{
288288
HttpClientHandler handler = CreateHttpClientHandler();
289289
handler.AllowAutoRedirect = true;
290-
Uri targetUri = remoteServer.BasicAuthUriForCreds(userName: Username, password: Password);
290+
Uri targetUri = remoteServer.BasicAuthUriForCreds(Username, Password);
291291
using (HttpClient client = CreateHttpClientForRemoteServer(remoteServer, handler))
292292
{
293293
Uri uri = remoteServer.RedirectUriForDestinationUri(
@@ -480,8 +480,8 @@ public async Task GetAsync_CredentialIsNetworkCredentialUriRedirect_StatusCodeUn
480480
{
481481
Uri redirectUri = remoteServer.RedirectUriForCreds(
482482
statusCode: 302,
483-
userName: Username,
484-
password: Password);
483+
Username,
484+
Password);
485485
using (HttpResponseMessage unAuthResponse = await client.GetAsync(redirectUri))
486486
{
487487
Assert.Equal(HttpStatusCode.Unauthorized, unAuthResponse.StatusCode);
@@ -499,15 +499,15 @@ public async Task HttpClientHandler_CredentialIsNotCredentialCacheAfterRedirect_
499499
{
500500
Uri redirectUri = remoteServer.RedirectUriForCreds(
501501
statusCode: 302,
502-
userName: Username,
503-
password: Password);
502+
Username,
503+
Password);
504504
using (HttpResponseMessage unAuthResponse = await client.GetAsync(redirectUri))
505505
{
506506
Assert.Equal(HttpStatusCode.Unauthorized, unAuthResponse.StatusCode);
507507
}
508508

509509
// Use the same handler to perform get request, authentication should succeed after redirect.
510-
Uri uri = remoteServer.BasicAuthUriForCreds(userName: Username, password: Password);
510+
Uri uri = remoteServer.BasicAuthUriForCreds(Username, Password);
511511
using (HttpResponseMessage authResponse = await client.GetAsync(uri))
512512
{
513513
Assert.Equal(HttpStatusCode.OK, authResponse.StatusCode);
@@ -525,11 +525,11 @@ public async Task GetAsync_CredentialIsCredentialCacheUriRedirect_StatusCodeOK(C
525525
return;
526526
}
527527

528-
Uri uri = remoteServer.BasicAuthUriForCreds(userName: Username, password: Password);
528+
Uri uri = remoteServer.BasicAuthUriForCreds(Username, Password);
529529
Uri redirectUri = remoteServer.RedirectUriForCreds(
530530
statusCode: statusCode,
531-
userName: Username,
532-
password: Password);
531+
Username,
532+
Password);
533533
_output.WriteLine(uri.AbsoluteUri);
534534
_output.WriteLine(redirectUri.AbsoluteUri);
535535
var credentialCache = new CredentialCache();

src/libraries/Common/tests/System/Net/Http/HttpClientHandlerTest.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -765,7 +765,7 @@ public async Task PostAsync_ManyDifferentRequestHeaders_SentCorrectly()
765765
}
766766

767767
const string content = "hello world";
768-
768+
string authSafeValue = "QWxhZGRpbjpvcGVuIHNlc2FtZQ==";
769769
// Using examples from https://en.wikipedia.org/wiki/List_of_HTTP_header_fields#Request_fields
770770
// Exercises all exposed request.Headers and request.Content.Headers strongly-typed properties
771771
await LoopbackServerFactory.CreateClientAndServerAsync(async uri =>
@@ -784,7 +784,7 @@ await LoopbackServerFactory.CreateClientAndServerAsync(async uri =>
784784
request.Headers.Add("Access-Control-Request-Method", "GET");
785785
request.Headers.Add("Access-Control-Request-Headers", "GET");
786786
request.Headers.Add("Age", "12");
787-
request.Headers.Authorization = new AuthenticationHeaderValue("Basic", "QWxhZGRpbjpvcGVuIHNlc2FtZQ==");
787+
request.Headers.Authorization = new AuthenticationHeaderValue("Basic", authSafeValue);
788788
request.Headers.CacheControl = new CacheControlHeaderValue() { NoCache = true };
789789
request.Headers.Connection.Add("close");
790790
request.Headers.Add("Cookie", "$Version=1; Skin=new");
@@ -804,7 +804,7 @@ await LoopbackServerFactory.CreateClientAndServerAsync(async uri =>
804804
request.Headers.MaxForwards = 10;
805805
request.Headers.Add("Origin", "http://www.example-social-network.com");
806806
request.Headers.Pragma.Add(new NameValueHeaderValue("no-cache"));
807-
request.Headers.ProxyAuthorization = new AuthenticationHeaderValue("Basic", "QWxhZGRpbjpvcGVuIHNlc2FtZQ==");
807+
request.Headers.ProxyAuthorization = new AuthenticationHeaderValue("Basic", authSafeValue);
808808
request.Headers.Range = new RangeHeaderValue(500, 999);
809809
request.Headers.Referrer = new Uri("http://en.wikipedia.org/wiki/Main_Page");
810810
request.Headers.TE.Add(new TransferCodingWithQualityHeaderValue("trailers"));
@@ -858,7 +858,7 @@ await LoopbackServerFactory.CreateClientAndServerAsync(async uri =>
858858
Assert.Equal("GET", requestData.GetSingleHeaderValue("Access-Control-Request-Method"));
859859
Assert.Equal("GET", requestData.GetSingleHeaderValue("Access-Control-Request-Headers"));
860860
Assert.Equal("12", requestData.GetSingleHeaderValue("Age"));
861-
Assert.Equal("Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==", requestData.GetSingleHeaderValue("Authorization"));
861+
Assert.Equal($"Basic {authSafeValue}", requestData.GetSingleHeaderValue("Authorization"));
862862
Assert.Equal("no-cache", requestData.GetSingleHeaderValue("Cache-Control"));
863863
Assert.Equal("$Version=1; Skin=new", requestData.GetSingleHeaderValue("Cookie"));
864864
Assert.Equal("Tue, 15 Nov 1994 08:12:31 GMT", requestData.GetSingleHeaderValue("Date"));
@@ -873,7 +873,7 @@ await LoopbackServerFactory.CreateClientAndServerAsync(async uri =>
873873
Assert.Equal("10", requestData.GetSingleHeaderValue("Max-Forwards"));
874874
Assert.Equal("http://www.example-social-network.com", requestData.GetSingleHeaderValue("Origin"));
875875
Assert.Equal("no-cache", requestData.GetSingleHeaderValue("Pragma"));
876-
Assert.Equal("Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==", requestData.GetSingleHeaderValue("Proxy-Authorization"));
876+
Assert.Equal($"Basic {authSafeValue}", requestData.GetSingleHeaderValue("Proxy-Authorization"));
877877
Assert.Equal("bytes=500-999", requestData.GetSingleHeaderValue("Range"));
878878
Assert.Equal("http://en.wikipedia.org/wiki/Main_Page", requestData.GetSingleHeaderValue("Referer"));
879879
Assert.Equal("MyTrailer", requestData.GetSingleHeaderValue("Trailer"));

0 commit comments

Comments
 (0)