Updated to use WebEncoders utility's Base64Url encode/decode functionality

This commit is contained in:
Kiran Challa 2017-08-24 11:27:06 -07:00
parent 4917e69ad6
commit cfc05104e4
2 changed files with 10 additions and 10 deletions

View File

@ -59,7 +59,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures
var encodedValue = _chunkingCookieManager.GetRequestCookie(context, _options.Cookie.Name); var encodedValue = _chunkingCookieManager.GetRequestCookie(context, _options.Cookie.Name);
if (!string.IsNullOrEmpty(encodedValue)) if (!string.IsNullOrEmpty(encodedValue))
{ {
var protectedData = Base64UrlTextEncoder.Decode(encodedValue); var protectedData = WebEncoders.Base64UrlDecode(encodedValue);
var unprotectedData = _dataProtector.Unprotect(protectedData); var unprotectedData = _dataProtector.Unprotect(protectedData);
var tempData = _tempDataSerializer.Deserialize(unprotectedData); var tempData = _tempDataSerializer.Deserialize(unprotectedData);
@ -99,7 +99,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures
{ {
var bytes = _tempDataSerializer.Serialize(values); var bytes = _tempDataSerializer.Serialize(values);
bytes = _dataProtector.Protect(bytes); bytes = _dataProtector.Protect(bytes);
var encodedValue = Base64UrlTextEncoder.Encode(bytes); var encodedValue = WebEncoders.Base64UrlEncode(bytes);
_chunkingCookieManager.AppendResponseCookie(context, _options.Cookie.Name, encodedValue, cookieOptions); _chunkingCookieManager.AppendResponseCookie(context, _options.Cookie.Name, encodedValue, cookieOptions);
} }
else else

View File

@ -29,7 +29,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures
var tempDataProviderStore = new TempDataSerializer(); var tempDataProviderStore = new TempDataSerializer();
var expectedDataToProtect = tempDataProviderStore.Serialize(values); var expectedDataToProtect = tempDataProviderStore.Serialize(values);
var expectedDataInCookie = Base64UrlTextEncoder.Encode(expectedDataToProtect); var expectedDataInCookie = WebEncoders.Base64UrlEncode(expectedDataToProtect);
var tempDataProvider = GetProvider(dataProtector: null, options: new CookieTempDataProviderOptions() var tempDataProvider = GetProvider(dataProtector: null, options: new CookieTempDataProviderOptions()
{ {
Cookie = { Name = expectedCookieName } Cookie = { Name = expectedCookieName }
@ -83,7 +83,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures
inputData.Add("int", 10); inputData.Add("int", 10);
var tempDataProviderSerializer = new TempDataSerializer(); var tempDataProviderSerializer = new TempDataSerializer();
var expectedDataToUnprotect = tempDataProviderSerializer.Serialize(inputData); var expectedDataToUnprotect = tempDataProviderSerializer.Serialize(inputData);
var base64AndUrlEncodedDataInCookie = Base64UrlTextEncoder.Encode(expectedDataToUnprotect); var base64AndUrlEncodedDataInCookie = WebEncoders.Base64UrlEncode(expectedDataToUnprotect);
var context = new DefaultHttpContext(); var context = new DefaultHttpContext();
context.Request.Cookies = new RequestCookieCollection(new Dictionary<string, string>() context.Request.Cookies = new RequestCookieCollection(new Dictionary<string, string>()
@ -110,7 +110,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures
expectedValues.Add("int", 10); expectedValues.Add("int", 10);
var tempDataProviderSerializer = new TempDataSerializer(); var tempDataProviderSerializer = new TempDataSerializer();
var expectedDataToUnprotect = tempDataProviderSerializer.Serialize(expectedValues); var expectedDataToUnprotect = tempDataProviderSerializer.Serialize(expectedValues);
var base64AndUrlEncodedDataInCookie = Base64UrlTextEncoder.Encode(expectedDataToUnprotect); var base64AndUrlEncodedDataInCookie = WebEncoders.Base64UrlEncode(expectedDataToUnprotect);
var dataProtector = new PassThroughDataProtector(); var dataProtector = new PassThroughDataProtector();
var tempDataProvider = GetProvider(dataProtector); var tempDataProvider = GetProvider(dataProtector);
var requestCookies = new RequestCookieCollection(new Dictionary<string, string>() var requestCookies = new RequestCookieCollection(new Dictionary<string, string>()
@ -138,7 +138,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures
values.Add("int", 10); values.Add("int", 10);
var tempDataProviderStore = new TempDataSerializer(); var tempDataProviderStore = new TempDataSerializer();
var expectedDataToProtect = tempDataProviderStore.Serialize(values); var expectedDataToProtect = tempDataProviderStore.Serialize(values);
var expectedDataInCookie = Base64UrlTextEncoder.Encode(expectedDataToProtect); var expectedDataInCookie = WebEncoders.Base64UrlEncode(expectedDataToProtect);
var dataProtector = new PassThroughDataProtector(); var dataProtector = new PassThroughDataProtector();
var tempDataProvider = GetProvider(dataProtector); var tempDataProvider = GetProvider(dataProtector);
var responseCookies = new MockResponseCookieCollection(); var responseCookies = new MockResponseCookieCollection();
@ -171,7 +171,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures
values.Add("int", 10); values.Add("int", 10);
var tempDataProviderStore = new TempDataSerializer(); var tempDataProviderStore = new TempDataSerializer();
var expectedDataToProtect = tempDataProviderStore.Serialize(values); var expectedDataToProtect = tempDataProviderStore.Serialize(values);
var expectedDataInCookie = Base64UrlTextEncoder.Encode(expectedDataToProtect); var expectedDataInCookie = WebEncoders.Base64UrlEncode(expectedDataToProtect);
var dataProtector = new PassThroughDataProtector(); var dataProtector = new PassThroughDataProtector();
var tempDataProvider = GetProvider(dataProtector); var tempDataProvider = GetProvider(dataProtector);
var responseCookies = new MockResponseCookieCollection(); var responseCookies = new MockResponseCookieCollection();
@ -216,7 +216,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures
values.Add("int", 10); values.Add("int", 10);
var tempDataProviderStore = new TempDataSerializer(); var tempDataProviderStore = new TempDataSerializer();
var expectedDataToProtect = tempDataProviderStore.Serialize(values); var expectedDataToProtect = tempDataProviderStore.Serialize(values);
var expectedDataInCookie = Base64UrlTextEncoder.Encode(expectedDataToProtect); var expectedDataInCookie = WebEncoders.Base64UrlEncode(expectedDataToProtect);
var dataProtector = new PassThroughDataProtector(); var dataProtector = new PassThroughDataProtector();
var tempDataProvider = GetProvider(dataProtector); var tempDataProvider = GetProvider(dataProtector);
var responseCookies = new MockResponseCookieCollection(); var responseCookies = new MockResponseCookieCollection();
@ -266,7 +266,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures
values.Add("int", 10); values.Add("int", 10);
var tempDataProviderStore = new TempDataSerializer(); var tempDataProviderStore = new TempDataSerializer();
var expectedDataToProtect = tempDataProviderStore.Serialize(values); var expectedDataToProtect = tempDataProviderStore.Serialize(values);
var expectedDataInCookie = Base64UrlTextEncoder.Encode(expectedDataToProtect); var expectedDataInCookie = WebEncoders.Base64UrlEncode(expectedDataToProtect);
var dataProtector = new PassThroughDataProtector(); var dataProtector = new PassThroughDataProtector();
var tempDataProvider = GetProvider( var tempDataProvider = GetProvider(
dataProtector, dataProtector,
@ -314,7 +314,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures
values.Add("int", 10); values.Add("int", 10);
var tempDataProviderStore = new TempDataSerializer(); var tempDataProviderStore = new TempDataSerializer();
var serializedData = tempDataProviderStore.Serialize(values); var serializedData = tempDataProviderStore.Serialize(values);
var base64AndUrlEncodedData = Base64UrlTextEncoder.Encode(serializedData); var base64AndUrlEncodedData = WebEncoders.Base64UrlEncode(serializedData);
var dataProtector = new PassThroughDataProtector(); var dataProtector = new PassThroughDataProtector();
var tempDataProvider = GetProvider(dataProtector); var tempDataProvider = GetProvider(dataProtector);
var requestCookies = new RequestCookieCollection(new Dictionary<string, string>() var requestCookies = new RequestCookieCollection(new Dictionary<string, string>()