resolve issue where IDP fails to provide email claim resulting in External Login Remote Failure due to dbo.AspNetUsers requiring a unique email value for each user
This commit is contained in:
@ -414,11 +414,6 @@
|
|||||||
_displayname = PageState.User.DisplayName;
|
_displayname = PageState.User.DisplayName;
|
||||||
_timezoneid = PageState.User.TimeZoneId;
|
_timezoneid = PageState.User.TimeZoneId;
|
||||||
|
|
||||||
if (string.IsNullOrEmpty(_email))
|
|
||||||
{
|
|
||||||
AddModuleMessage(Localizer["Message.User.NoEmail"], MessageType.Warning);
|
|
||||||
}
|
|
||||||
|
|
||||||
// get user folder
|
// get user folder
|
||||||
var folder = await FolderService.GetFolderAsync(ModuleState.SiteId, PageState.User.FolderPath);
|
var folder = await FolderService.GetFolderAsync(ModuleState.SiteId, PageState.User.FolderPath);
|
||||||
if (folder != null)
|
if (folder != null)
|
||||||
|
@ -147,9 +147,6 @@
|
|||||||
<data name="Message.User.NoLogIn" xml:space="preserve">
|
<data name="Message.User.NoLogIn" xml:space="preserve">
|
||||||
<value>Current User Is Not Logged In</value>
|
<value>Current User Is Not Logged In</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Message.User.NoEmail" xml:space="preserve">
|
|
||||||
<value>You Must Provide An Email Address For Your User Account</value>
|
|
||||||
</data>
|
|
||||||
<data name="Error.Profile.Load" xml:space="preserve">
|
<data name="Error.Profile.Load" xml:space="preserve">
|
||||||
<value>Error Loading User Profile</value>
|
<value>Error Loading User Profile</value>
|
||||||
</data>
|
</data>
|
||||||
|
@ -20,13 +20,6 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// force authenticated user to provide email address (email may be missing if using external login)
|
|
||||||
if (PageState.User != null && PageState.User.IsAuthenticated && string.IsNullOrEmpty(PageState.User.Email) && PageState.Route.PagePath != "profile")
|
|
||||||
{
|
|
||||||
NavigationManager.NavigateTo(Utilities.NavigateUrl(PageState.Alias.Path, "profile", "returnurl=" + WebUtility.UrlEncode(PageState.Route.PathAndQuery)));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// set page title
|
// set page title
|
||||||
if (!string.IsNullOrEmpty(PageState.Page.Title))
|
if (!string.IsNullOrEmpty(PageState.Page.Title))
|
||||||
{
|
{
|
||||||
|
@ -404,13 +404,13 @@ namespace Oqtane.Extensions
|
|||||||
else if (!string.IsNullOrEmpty(name)) // name claim provided
|
else if (!string.IsNullOrEmpty(name)) // name claim provided
|
||||||
{
|
{
|
||||||
username = name.ToLower().Replace(" ", "") + DateTime.UtcNow.ToString("mmss");
|
username = name.ToLower().Replace(" ", "") + DateTime.UtcNow.ToString("mmss");
|
||||||
emailaddress = ""; // unknown - will need to be requested from user later
|
emailaddress = username + "@unknown.com";
|
||||||
displayname = name;
|
displayname = name;
|
||||||
}
|
}
|
||||||
else // neither email nor name provided
|
else // neither email nor name provided
|
||||||
{
|
{
|
||||||
username = Guid.NewGuid().ToString("N");
|
username = Guid.NewGuid().ToString("N");
|
||||||
emailaddress = ""; // unknown - will need to be requested from user later
|
emailaddress = username + "@unknown.com";
|
||||||
displayname = username;
|
displayname = username;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user