public void Hydrate(ExternalLoginProviderModel externalLoginProviderModel) { var configuration = m_dynamicModuleProvider.GetModuleConfigurations() .FirstOrDefault(x => x.Name == externalLoginProviderModel.AuthenticationScheme); externalLoginProviderModel.Enable = configuration != null && configuration.Enable; }
private void SynchronizeMainLogo(ExternalLoginProviderModel externalLoginProvider, DynamicModuleModel dynamicModule) { var dynamicModuleMainLogo = dynamicModule.DynamicModuleBlobs.FirstOrDefault( x => x.Type == DynamicModuleBlobEnumModel.MainLogo ); if (dynamicModuleMainLogo != null) { m_externalLoginProviderManager.UpdateLogo(externalLoginProvider, dynamicModuleMainLogo.File); } }
public DataResult <bool> UpdateLogo(ExternalLoginProviderModel externalLoginProvider, FileResourceModel file) { try { return(Success( m_externalLoginProviderUoW.UpdateLogo(externalLoginProvider.Id, file.Id) )); } catch (DatabaseException e) { m_logger.LogWarning(e); return(Error <bool>(e.Message)); } }
public DataResult <bool> UpdateDynamicModule(ExternalLoginProviderModel externalLoginProvider, DynamicModuleModel dynamicModule) { try { return(Success( m_externalLoginProviderUoW.UpdateDynamicModule( externalLoginProvider.Id, dynamicModule.Id ) )); } catch (DatabaseException e) { m_logger.LogWarning(e); return(Error <bool>(e.Message)); } }
public IList <ExternalLoginProviderModel> GetExternalLogins(string returnUrl, bool generateState = false) { IEnumerable <AuthenticationDescription> descriptions = Request.GetOwinContext().Authentication.GetExternalAuthenticationTypes(); IList <ExternalLoginProviderModel> providers = new List <ExternalLoginProviderModel>(); string state; if (generateState) { const int strengthInBits = 256; state = RandomOAuthStateGenerator.Generate(strengthInBits); } else { state = null; } foreach (AuthenticationDescription description in descriptions) { var loginProvider = (ExternalLoginProvider)Enum.Parse(typeof(ExternalLoginProvider), description.Caption, ignoreCase: true); ExternalLoginProviderModel model = new ExternalLoginProviderModel { Provider = loginProvider, Url = Url.Route("externalLogin", new { provider = description.AuthenticationType, response_type = "token", client_id = Startup.PublicClientId, redirect_uri = new Uri(Request.RequestUri, returnUrl).AbsoluteUri + Startup.ExternalAuthPageUrl, state = state }), State = state }; providers.Add(model); } return(providers); }
public DataResult <bool> UpdateNames( ExternalLoginProviderModel externalLoginProvider, DynamicModuleModel dynamicModule, Type moduleInfoModuleConfigType ) { var dynamicModuleConfiguration = dynamicModule.Configuration(moduleInfoModuleConfigType); if (string.IsNullOrEmpty(dynamicModuleConfiguration.Name)) { var message = $"Property '{nameof(dynamicModuleConfiguration.Name)}' is required"; m_logger.LogWarning(message); return(Error <bool>(message)); } if (string.IsNullOrEmpty(dynamicModuleConfiguration.DisplayName)) { var message = $"Property '{nameof(dynamicModuleConfiguration.DisplayName)}' is required"; m_logger.LogWarning(message); return(Error <bool>(message)); } try { return(Success( m_externalLoginProviderUoW.UpdateNames( externalLoginProvider.Id, dynamicModuleConfiguration.Name, dynamicModuleConfiguration.DisplayName ) )); } catch (DatabaseException e) { m_logger.LogWarning(e); return(Error <bool>(e.Message)); } }
public DataResult <int> AddDataSource(DataSourceEnumModel dataSourceEnumModel, ExternalLoginProviderModel externalLoginProvider) { var dataSourceEnum = m_mapper.Map <DataSourceEnum>(dataSourceEnumModel); var dataSource = new DataSourceEntity { DataSource = dataSourceEnum }; try { var result = m_dataSourceUoW.AddDataSource(dataSource, externalLoginProvider.Id); return(Success(result)); } catch (NoResultException <ExternalLoginProviderEntity> e) { m_logger.LogWarning(e); return(Error <int>(m_translator.Translate("invalid-external-login-provider-id"), DataResultErrorCode.ClaimNothingToRemove)); } catch (DatabaseException e) { m_logger.LogWarning(e); return(Error <int>(e.Message)); } }
public DataResult <DataSourceModel> GetDataSourceByDataSource(DataSourceEnumModel dataSourceEnumModel, ExternalLoginProviderModel externalLoginProvider) { try { var dataSourceEnum = m_mapper.Map <DataSourceEnum>(dataSourceEnumModel); var dataSource = m_dataSourceUoW.GetDataSourceByDataSource(dataSourceEnum, externalLoginProvider.Id); var dataSourceModel = m_mapper.Map <DataSourceModel>(dataSource); return(Success(dataSourceModel)); } catch (DatabaseException e) { m_logger.LogWarning(e); return(Error <DataSourceModel>(e.Message)); } }
protected bool Equals(ExternalLoginProviderModel other) { return(Id == other.Id); }
public string GetExternalLogins(string returnUrl, bool generateState = false) { var descriptions = Request.GetOwinContext().Authentication.GetExternalAuthenticationTypes(); IList<ExternalLoginProviderModel> providers = new List<ExternalLoginProviderModel>(); string state; if (generateState) { const int strengthInBits = 256; state = RandomOAuthStateGenerator.Generate(strengthInBits); } else { state = null; } foreach (var description in descriptions) { var loginProvider = (ExternalLoginType) Enum.Parse(typeof (ExternalLoginType), description.Caption, true); var model = new ExternalLoginProviderModel { Provider = loginProvider, Url = Url.Action("ExternalLinkLogin", "Account", new { provider = description.AuthenticationType, client_id = Startup.PublicClientId, redirect_uri = new Uri(Request.Url, returnUrl).AbsoluteUri + "/Account/GetExternalLogin", state }), State = state }; providers.Add(model); } return JsonConvert.SerializeObject(providers, new StringEnumConverter()); }