fixes U4-11463 MembershipHelper is not working with basic auth on the initial request

This commit is contained in:
Shannon
2018-06-26 10:52:42 +10:00
committed by Sebastiaan Janssen
parent 26e2bc6afa
commit f359648215

View File

@@ -647,10 +647,15 @@ namespace Umbraco.Web.Security
var provider = _membershipProvider; var provider = _membershipProvider;
string username; string username;
if (provider.IsUmbracoMembershipProvider()) if (provider.IsUmbracoMembershipProvider())
{ {
var member = GetCurrentPersistedMember(); var member = GetCurrentPersistedMember();
// If a member could not be resolved from the provider, we are clearly not authorized and can break right here
if (member == null)
return false;
username = member.Username; username = member.Username;
// If types defined, check member is of one of those types // If types defined, check member is of one of those types
var allowTypesList = allowTypes as IList<string> ?? allowTypes.ToList(); var allowTypesList = allowTypes as IList<string> ?? allowTypes.ToList();
if (allowTypesList.Any(allowType => allowType != string.Empty)) if (allowTypesList.Any(allowType => allowType != string.Empty))
@@ -669,6 +674,9 @@ namespace Umbraco.Web.Security
else else
{ {
var member = provider.GetCurrentUser(); var member = provider.GetCurrentUser();
// If a member could not be resolved from the provider, we are clearly not authorized and can break right here
if (member == null)
return false;
username = member.UserName; username = member.UserName;
} }