diff --git a/Oqtane.Client/Modules/Admin/Users/Index.razor b/Oqtane.Client/Modules/Admin/Users/Index.razor index b75922120..a59b161d6 100644 --- a/Oqtane.Client/Modules/Admin/Users/Index.razor +++ b/Oqtane.Client/Modules/Admin/Users/Index.razor @@ -551,7 +551,7 @@ else private void LoadExternalLoginSettings(Dictionary settings) { - _provider = SettingService.GetSetting(settings, "ExternalLogin:Provider", "Custom"); + _provider = SettingService.GetSetting(settings, "ExternalLogin:Provider", ""); _providerurl = SettingService.GetSetting(settings, "ExternalLogin:ProviderUrl", ""); _providertype = SettingService.GetSetting(settings, "ExternalLogin:ProviderType", ""); _providername = SettingService.GetSetting(settings, "ExternalLogin:ProviderName", ""); diff --git a/Oqtane.Shared/Shared/ExternalLoginProviders.cs b/Oqtane.Shared/Shared/ExternalLoginProviders.cs index 643c4ea44..8b62bad96 100644 --- a/Oqtane.Shared/Shared/ExternalLoginProviders.cs +++ b/Oqtane.Shared/Shared/ExternalLoginProviders.cs @@ -1,4 +1,5 @@ using System.Collections.Generic; +using System.Linq; using Oqtane.Models; namespace Oqtane.Shared @@ -13,9 +14,10 @@ public static List Providers { new ExternalLoginProvider { - Name = "Custom", + Name = "", Settings = new Dictionary() }, + // OIDC new ExternalLoginProvider { Name = "Microsoft Entra", @@ -30,6 +32,20 @@ public static List Providers } }, new ExternalLoginProvider + { + Name = "Auth0 (by Okta)", + Settings = new Dictionary() + { + { "ExternalLogin:ProviderUrl", "https://auth0.com/docs/get-started" }, + { "ExternalLogin:ProviderType", "oidc" }, + { "ExternalLogin:ProviderName", "Auth0" }, + { "ExternalLogin:Authority", "YOUR DOMAIN" }, + { "ExternalLogin:ClientId", "YOUR CLIENT ID" }, + { "ExternalLogin:ClientSecret", "YOUR CLIENT SECRET" } + } + }, + // OAuth2 + new ExternalLoginProvider { Name = "GitHub", Settings = new Dictionary() @@ -46,10 +62,27 @@ public static List Providers { "ExternalLogin:IdentifierClaimType", "email" }, { "ExternalLogin:DomainFilter", "!users.noreply.github.com" } } + }, + new ExternalLoginProvider + { + Name = "Facebook", + Settings = new Dictionary() + { + { "ExternalLogin:ProviderUrl", "https://developers.facebook.com/apps/" }, + { "ExternalLogin:ProviderType", "oauth2" }, + { "ExternalLogin:ProviderName", "Facebook" }, + { "ExternalLogin:AuthorizationUrl", "https://www.facebook.com/v18.0/dialog/oauth" }, + { "ExternalLogin:TokenUrl", "https://graph.facebook.com/v18.0/oauth/access_token" }, + { "ExternalLogin:UserInfoUrl", "https://graph.facebook.com/v18.0/me" }, + { "ExternalLogin:ClientId", "YOUR CLIENT ID" }, + { "ExternalLogin:ClientSecret", "YOUR CLIENT SECRET" }, + { "ExternalLogin:Scopes", "public_profile" }, + { "ExternalLogin:IdentifierClaimType", "id" } + } } }; - return providers; + return providers.OrderBy(item => item.Name).ToList(); } } }