private void InitProviders() { IEnumerable <LoginProfile> linkedAccounts = new List <LoginProfile>(); if (SecurityContext.IsAuthenticated) { linkedAccounts = GetLinker().GetLinkedProfiles(SecurityContext.CurrentAccount.ID.ToString()); } var fromOnly = string.IsNullOrWhiteSpace(HttpContext.Current.Request["fromonly"]) ? string.Empty : HttpContext.Current.Request["fromonly"].ToLower(); foreach (var provider in AuthProviders.Where(provider => string.IsNullOrEmpty(fromOnly) || fromOnly == provider || (provider == "google" && fromOnly == "openid"))) { if (InviteView && InviteExceptProviders.Contains(provider)) { continue; } var loginProvider = ProviderManager.GetLoginProvider(provider); if (loginProvider != null && loginProvider.IsEnabled) { AddProvider(provider, linkedAccounts); } } }
private void InitProviders() { IEnumerable <LoginProfile> linkedAccounts = new List <LoginProfile>(); if (SecurityContext.IsAuthenticated) { linkedAccounts = GetLinker().GetLinkedProfiles(SecurityContext.CurrentAccount.ID.ToString()); } var fromOnly = string.IsNullOrWhiteSpace(HttpContext.Current.Request["fromonly"]) ? string.Empty : HttpContext.Current.Request["fromonly"].ToLower(); var providers = new List <string> { ProviderConstants.Google, ProviderConstants.Facebook, ProviderConstants.Twitter, ProviderConstants.LinkedIn, ProviderConstants.MailRu, ProviderConstants.VK, ProviderConstants.Yandex, ProviderConstants.GosUslugi }; foreach (var provider in providers.Where(provider => string.IsNullOrEmpty(fromOnly) || fromOnly == provider || (provider == "google" && fromOnly == "openid"))) { var loginProvider = ProviderManager.GetLoginProvider(provider); if (loginProvider != null && loginProvider.IsEnabled) { AddProvider(provider, linkedAccounts); } } }
[Read("", false, false)] //NOTE: this method doesn't requires auth!!! //NOTE: this method doesn't check payment!!! public CapabilitiesData GetPortalCapabilities() { var result = new CapabilitiesData { LdapEnabled = false, Providers = null, SsoLabel = string.Empty, SsoUrl = string.Empty }; try { if (SetupInfo.IsVisibleSettings(ManagementType.LdapSettings.ToString()) && (!CoreContext.Configuration.Standalone || CoreContext.TenantManager.GetTenantQuota(TenantProvider.CurrentTenantID).Ldap)) { var settings = LdapSettings.Load(); result.LdapEnabled = settings.EnableLdapAuthentication; } } catch (Exception ex) { LogManager.GetLogger("ASC").Error(ex.Message); } try { result.Providers = AccountLinkControl.AuthProviders .Where(loginProvider => { var provider = ProviderManager.GetLoginProvider(loginProvider); return(provider != null && provider.IsEnabled); }) .ToList(); } catch (Exception ex) { LogManager.GetLogger("ASC").Error(ex.Message); } try { if (SetupInfo.IsVisibleSettings(ManagementType.SingleSignOnSettings.ToString()) && (!CoreContext.Configuration.Standalone || CoreContext.TenantManager.GetTenantQuota(TenantProvider.CurrentTenantID).Sso)) { var settings = SsoSettingsV2.Load(); if (settings.EnableSso) { var uri = HttpContext.Current.Request.GetUrlRewriter(); var configUrl = GetAppSettings("web.sso.saml.login.url", ""); result.SsoUrl = string.Format("{0}://{1}{2}{3}", uri.Scheme, uri.Host, (uri.Port == 80 || uri.Port == 443) ? "" : ":" + uri.Port, configUrl); result.SsoLabel = settings.SpLoginLabel; } } } catch (Exception ex) { LogManager.GetLogger("ASC").Error(ex.Message); } return(result); }
[Read(Check = false)] //NOTE: this method doesn't requires auth!!! //NOTE: this method doesn't check payment!!! public CapabilitiesData GetPortalCapabilities() { var result = new CapabilitiesData { LdapEnabled = false, Providers = null, SsoLabel = string.Empty, SsoUrl = string.Empty }; try { if (SetupInfo.IsVisibleSettings(ManagementType.LdapSettings.ToString()) && (!CoreBaseSettings.Standalone || TenantManager.GetTenantQuota(TenantManager.GetCurrentTenant().TenantId).Ldap)) { //var settings = SettingsManager.Load<LdapSettings>(); //result.LdapEnabled = settings.EnableLdapAuthentication; result.LdapEnabled = false; } } catch (Exception ex) { Log.Error(ex.Message); } try { result.Providers = ProviderManager.AuthProviders.Where(loginProvider => { var provider = ProviderManager.GetLoginProvider(loginProvider); return(provider != null && provider.IsEnabled); }) .ToList(); } catch (Exception ex) { Log.Error(ex.Message); } try { if (SetupInfo.IsVisibleSettings(ManagementType.SingleSignOnSettings.ToString()) && (!CoreBaseSettings.Standalone || TenantManager.GetTenantQuota(TenantManager.GetCurrentTenant().TenantId).Sso)) { //var settings = SettingsManager.Load<SsoSettingsV2>(); //if (settings.EnableSso) //{ var uri = HttpContextAccessor.HttpContext.Request.GetUrlRewriter(); var configUrl = Configuration["web:sso:saml:login:url"] ?? ""; result.SsoUrl = string.Format("{0}://{1}{2}{3}", uri.Scheme, uri.Host, (uri.Port == 80 || uri.Port == 443) ? "" : ":" + uri.Port, configUrl); result.SsoLabel = string.Empty; // result.SsoLabel = settings.SpLoginLabel; //} } } catch (Exception ex) { Log.Error(ex.Message); } return(result); }