internal BaseActionReturnModel AuthorizeApplicationtoClient(ClientApplication ClientApp, ApplicationUser User, SecurityDataContext ctx) { try { // Prevent double assignation if (ctx.UserAuthorizationAssignations.Count(p => p.ClientApplication.id == ClientApp.id && p.User.Id == User.Id) == 0) { UserClientAppAssignation r = new UserClientAppAssignation(); r.User = User; r.Blocked = false; r.App = ClientApp; ctx.UserClientAppAssignations.Add(r); return(BaseActionReturnModel.CreateSuccededResult("OK", false, null, false)); } else { return(BaseActionReturnModel.CreateSuccededResult("Application already assigned to client", false, null, true)); } } catch (Exception exc) { return(BaseActionReturnModel.CreateException(exc, false)); } }
public void DeletePrivileges(string roleCode) { SecurityDataContext context = new SecurityDataContext(); var tobeDeleted = context.RoleCanPerforms.Where(x => x.RoleCode == roleCode); context.RoleCanPerforms.DeleteAllOnSubmit(tobeDeleted); context.SubmitChanges(); }
public void DeleteAccount(Guid accountId) { SecurityDataContext context = new SecurityDataContext(); var result = context.Accounts.Single(x => x.Id == accountId); result.IsDeleted = true; context.SubmitChanges(); }
public UserService(IUnitOfWork unitOfWork) { if (unitOfWork == null) { throw new ArgumentNullException("unitOfWork"); } _context = unitOfWork as SecurityDataContext; _userRepository = new UserRepository(_context); }
public void DeleteReference(Guid id) { SecurityDataContext context = new SecurityDataContext(); //var result = context.References.Single(x => x.ReferenceTypeCode == referenceTypeCode && x.ReferenceCode == referenceCode); var result = context.References.Single(x => x.Id == id); result.IsDeleted = true; context.SubmitChanges(); }
public void AddPrivilege(string operationCode, string roleCode) { var entity = new RoleCanPerform(); entity.OperationCode = operationCode; entity.RoleCode = roleCode; SecurityDataContext context = new SecurityDataContext(); context.RoleCanPerforms.InsertOnSubmit(entity); context.SubmitChanges(); }
public void ChangePassword(Guid accountId, string newPassword) { SecurityDataContext context = new SecurityDataContext(); var result = context.Accounts.Single(x => x.Id == accountId); result.Password = newPassword; result.ChangePasswordOnFirstLogon = false; context.SubmitChanges(); }
public void UpdateReference(Reference entity) { SecurityDataContext context = new SecurityDataContext(); var result = context.References.Single(x => x.ReferenceTypeCode == entity.ReferenceTypeCode && x.ReferenceCode == entity.ReferenceCode); result.ReferenceValue = entity.ReferenceValue; result.Sequence = entity.Sequence; context.SubmitChanges(); }
public List<Entity.ReferenceType> GetReferenceTypeList() { SecurityDataContext context = new SecurityDataContext(); return context.ReferenceTypes.Where(x => x.IsDeleted == false || x.IsDeleted == null) .Select(x => new Entity.ReferenceType() { ReferenceTypeCode = x.ReferenceTypeCode, Description = x.Description, IsDeleted = x.IsDeleted }).ToList(); }
public RoleControllerTests(CustomWebApplicationFactory <Security.Api.Startup> factory) { this.factory = factory; this.client = factory.CreateClient(); this.scope = this.factory.Services.CreateScope(); var context = this.scope.ServiceProvider.GetRequiredService <SecurityDataContext>(); this.context = context; this.context.Database.EnsureDeleted(); this.context.Database.EnsureCreated(); new SecurityDatabaseSeeder(context).Seed(); }
public ApplicationResourceControllerTests(CustomWebApplicationFactory <Security.Api.Startup> factory) { this.factory = factory; this.client = factory.CreateClient(); this.client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Test"); this.scope = this.factory.Services.CreateScope(); var context = this.scope.ServiceProvider.GetRequiredService <SecurityDataContext>(); this.context = context; context.Database.EnsureDeleted(); context.Database.EnsureCreated(); new SecurityDatabaseSeeder(context).Seed(); }
internal bool ValidateApplicationForUser(int AppID, string UserName) { using (SecurityDataContext db = new SecurityDataContext()) { int i = db.UserClientAppAssignations.Count(p => p.App.id == AppID && p.User.UserName == UserName); if (i == 0) { return(false); } else { return(true); } } }
// Handles querying page details from Page table private void ConfigureView(string pageName, dynamic viewBag) { int pageID = SecurityDataContext.Connection.ExecuteScalar <int?>("SELECT ID FROM Page WHERE Name={0} AND Enabled <> 0", pageName ?? "") ?? 0; Page page = SecurityDataContext.Table <Page>().LoadRecord(pageID); Dictionary <string, string> pageSettings = (page?.ServerConfiguration ?? "").ParseKeyValuePairs(); string pageImagePath = Path.ToAbsolute(GetPageSetting(viewBag, "pageImagePath").Replace("{pageName}", pageName ?? "")); pageImagePath = pageImagePath.EnsureEnd('/'); viewBag.Page = page; viewBag.PageID = pageID; viewBag.PageName = pageName; viewBag.PageImagePath = pageImagePath; viewBag.PageSettings = pageSettings; viewBag.Title = page?.Title ?? (pageName == null ? "<pageName is undefined>" : $"<Page record for \"{pageName}\" does not exist>"); }
public void DeleteAccountProfile(Guid accountProfileId,bool softDelete) { SecurityDataContext context = new SecurityDataContext(); var result = context.AccountProfiles.Single(x => x.Id == accountProfileId); if (softDelete) { result.IsDeleted = true; } else { context.AccountProfiles.DeleteOnSubmit(result); } context.SubmitChanges(); }
public void DeleteRoles(Guid accountId) { try { SecurityDataContext context = new SecurityDataContext(); var roles = context.AccountHasRoles.Where(x => x.AccountId == accountId).ToList(); context.AccountHasRoles.DeleteAllOnSubmit(roles); context.SubmitChanges(); context.Dispose(); } catch(Exception ex) { throw ex; } }
public void AddRoles(Guid accountId, List<string> roleCodes) { SecurityDataContext context = new SecurityDataContext(); DeleteRoles(accountId); foreach (string roleCode in roleCodes) { AccountHasRole ahr = new AccountHasRole() { AccountId = accountId, RoleCode = roleCode }; context.AccountHasRoles.InsertOnSubmit(ahr); } context.SubmitChanges(); }
//Return the ApplicationID if exist internal int ValidateClientApplication(string ApplicationTypeCode, string AppSecret) { using (SecurityDataContext db = new SecurityDataContext()) { int i = db.ClientApplications.Count(p => p.ApplicationCode == ApplicationTypeCode && p.ApplicationSecret == AppSecret); if (i != 0) { int AppID = db.ClientApplications.First(p => p.ApplicationCode == ApplicationTypeCode && p.ApplicationSecret == AppSecret).id; return(AppID); } else { return(-1); } } }
internal string CheckUserSecret(string UserName, string UserSecret) { // return UserID if existe else return -1 using (SecurityDataContext db = new SecurityDataContext()) { var manager = new ApplicationUserManager(new UserStore <ApplicationUser>(db)); ApplicationUser u = manager.Find(UserName, UserSecret); if (u != null) { return(u.Id); } else { return("-1"); } } }
public Guid? CreateAccountProfile(AccountProfile entity) { Guid? result = null; try { SecurityDataContext context = new SecurityDataContext(); if (entity.Id == Guid.Empty) entity.Id = Guid.NewGuid(); context.AccountProfiles.InsertOnSubmit(entity); context.SubmitChanges(); result = entity.Id; } catch { } return entity.Id; }
private void AcceptButtonClick(object sender, RoutedEventArgs e) { if (loginText.Text.Length > 0 && passwordText.Password.Length > 0) { using (var context = new SecurityDataContext()) { string hashedPassword = SecurityApp.Services.CryptoService.HashPassword(passwordText.Password); context.Users.Add(new User() { Login = loginText.Text, Password = hashedPassword }); context.SaveChanges(); } MessageBox.Show("Регистрация выполнена"); this.DialogResult = true; } else { MessageBox.Show("Заполните все поля"); } }
public void UpdateAccountProfile(AccountProfile entity) { try { SecurityDataContext context = new SecurityDataContext(); var profile = context.AccountProfiles.Where(x => x.Id == entity.Id).FirstOrDefault(); profile.Id = entity.Id; profile.FirstName = entity.FirstName; profile.LastName = entity.LastName; profile.FullName = entity.FullName; profile.Title = entity.Title; profile.JobTitle = entity.JobTitle; ; profile.IsMale = entity.IsMale; profile.IsDeleted = entity.IsDeleted; context.SubmitChanges(); } catch { } }
internal ClaimsIdentity GetClaimsFromUserID(string UserID, OAuthGrantResourceOwnerCredentialsContext context) { // create identity ClaimsIdentity id = new ClaimsIdentity(context.Options.AuthenticationType); id.AddClaim(new Claim("UserName", context.UserName)); id.AddClaim(new Claim("UserID", UserID.ToString())); id.AddClaim(new Claim("CurentAppTypeCode", context.ClientId)); // Get AUthorization from database using (SecurityDataContext db = new SecurityDataContext()) { var manager = new ApplicationUserManager(new UserStore <ApplicationUser>(db)); ApplicationUser u = manager.FindById(UserID); foreach (var item in u.UserAuthorizationAssignation) { // ne prendre en compte que les autorisation corespondant au type d'application que le client est en train d'utiliser if (item.ClientApplication.ApplicationCode == context.ClientId) { id.AddClaim(new Claim("Auth", item.Authorization.Code.ToString())); } } } return(id); }
private void SignInButtonClick(object sender, RoutedEventArgs e) { var login = loginTextBox.Text; var password = passwordBox.Password; if (string.IsNullOrEmpty(login) || string.IsNullOrEmpty(password)) { MessageBox.Show("Введите логин и пароль"); return; } using (var context = new SecurityDataContext()) { var user = context.Users.SingleOrDefault(searchingUser => searchingUser.Login == login); if (user == null || !CryptoService.VerifyPassword(password, user.Password)) { MessageBox.Show("Неверный логин или пароль"); } else { MessageBox.Show("Успешно"); } } }
public static IEnumerable<Equipo> all() { PortalDataContext portaldb = new PortalDataContext(ACommerce.BO.Comun.GetConnString()); SecurityDataContext secdb = new SecurityDataContext(ACommerce.BO.Comun.GetConnString()); string parametro = secdb.Parametros.Where(p => p.Codigo.Equals("URL_head")).FirstOrDefault().Valor.ToString(); // Selecciona todos los planes activos y luego selecciona todas las caracteristicas //de cada uno de estos planes y las inserta en un diccionario, que luego usa para crear una lista de planes List<Equipo> equiposList = (from p in portaldb.Productos join nv in portaldb.NameValues on p.nvManufacturer equals nv.IDNameValue where p.IsDeleted == '0' && p.nvTipo_Producto == 52 select new Equipo(p.IDProduct, p.ProductName, p.Codigo, p.ProductDescription, p.IDPhotoDefault.HasValue ? parametro + "/Lib/Images.aspx?ID=" + p.IDPhotoDefault : "", nv.Descripcion, p.ProductPrice1, p.ProductPrice2, p.ProductStock, (from pr in portaldb.ProductReviews where pr.IDProduct == p.IDProduct select pr.Score).FirstOrDefault(), (from ps in portaldb.vw_ProductSpecs where ps.IDProduct == p.IDProduct select new ParCaracteristicas(ps.Especificacion, ps.Value)).ToList() , parametro + "Master/Claro/Secciones/ShowProductMovil.aspx?ID=" + p.IDProduct) ) .ToList(); return equiposList; }
public bool ValidateAccount(string userName, string password) { SecurityDataContext context = new SecurityDataContext(); var account = context.Accounts.Where(x => x.UserName == userName && x.Password == password); return account.Count() > 0; }
public AccountProfile GetAccoutProfileById(Guid id) { SecurityDataContext context = new SecurityDataContext(); return context.AccountProfiles.FirstOrDefault(x => x.Id == id); }
public List<Privilege> GetPrivileges(string roleCode) { SecurityDataContext context = new SecurityDataContext(); var result = (from a in context.RoleCanPerforms.Where(x => x.RoleCode == roleCode) select new Privilege() { Code = a.OperationCode }).ToList(); return result; }
public List<Reference> GetReferenceByType(string referenceType) { SecurityDataContext context = new SecurityDataContext(); return context.References.Where(x => x.ReferenceTypeCode.ToLower() == referenceType.ToLower() && (x.IsDeleted.HasValue ? x.IsDeleted.Value : false) == false).ToList(); }
public List<Role> GetRoles(Guid accountId) { List<Role> result = new List<Role>(); SecurityDataContext context = new SecurityDataContext(); var refRoles = context.References.Where(x => x.ReferenceTypeCode == "Role").ToList(); var roles = from a in context.AccountHasRoles.Where(x => x.AccountId == accountId) select new Role() { Code = a.RoleCode, }; foreach(Role role in roles) { Privileges privilege = new Privileges(); privilege.AddRange(GetPrivileges(role.Code)); role.Privileges = privilege; result.Add(role); } return result.ToList(); }
public static IEnumerable<Equipo> compare(string[] equiposCodes) { PortalDataContext portaldb = new PortalDataContext(ACommerce.BO.Comun.GetConnString()); SecurityDataContext secdb = new SecurityDataContext(ACommerce.BO.Comun.GetConnString()); TiendaDataContext tiendadb = new TiendaDataContext(ACommerce.BO.Comun.GetConnString()); // From i In tiendadb.ProductReviews Where i.IDProduct = _idProduct Select i.Score string parametro = secdb.Parametros.Where(p => p.Codigo.Equals("URL_head")).FirstOrDefault().Valor.ToString(); //ACommerce.BO.usp_GetProductByCategory3Result source = tiendadb.usp_GetProductByCategory3(-1, "", -1, -1, -1); //decimal Precio = Math.Round(source.Productprice1 ?? 0, 0, MidpointRounding.AwayFromZero); //decimal PrecioAnterior = source.Productprice1ant == null ? 0 : Math.Round(source.Productprice1ant ?? 0, 0, MidpointRounding.AwayFromZero); //decimal PrecioPre = Math.Round(source.ProductpricePREP, 0, MidpointRounding.AwayFromZero); //decimal PrecioAnteriorPre = source.ProductpricePREPant == null ? 0: Math.Round(source.ProductpricePREPant, 0, MidpointRounding.AwayFromZero); //Selecciona todos los planes haciendo join con portalbycategory List<Equipo> equiposList = (from p in portaldb.vw_Productos join nv in portaldb.NameValues on p.nvManufacturer equals nv.IDNameValue where equiposCodes.Contains(p.Codigo) && p.nvTipo_Producto == 52 select new Equipo(p.IDProduct, p.Producto, p.Codigo, HtmlRemoval.StripTagsCharArray(p.Descripcion), p.IDPhotoDefault.HasValue ? parametro + "/Lib/Images.aspx?ID=" + p.IDPhotoDefault + "&thum=1" : "", nv.Descripcion, p.ProductPrice1, p.ProductPrice2, p.ProductStock, (from pr in portaldb.ProductReviews where pr.IDProduct == p.IDProduct select pr.Score).FirstOrDefault(), (from ps in portaldb.vw_ProductSpecs where ps.IDProduct == p.IDProduct select new ParCaracteristicas(ps.Especificacion, ps.Value)).ToList() , parametro + "Master/Claro/Secciones/ShowProductMovil.aspx?ID=" + p.IDProduct)) .ToList(); return equiposList; }
public BaseServiceProvider() { _dbContext = (SecurityDataContext)ContextFactory.Current.ResolveDependency <IDataContext>(); _mapper = ContextFactory.Current.ResolveDependency <IMapper>(); }
public SecurityConfigurationManager() { ctx = new SecurityDataContext(); }
public static IEnumerable<Equipo> byCategory(string categoryCode) { PortalDataContext portaldb = new PortalDataContext(ACommerce.BO.Comun.GetConnString()); SecurityDataContext secdb = new SecurityDataContext(ACommerce.BO.Comun.GetConnString()); string parametro = secdb.Parametros.Where(p => p.Codigo.Equals("URL_head")).FirstOrDefault().Valor.ToString(); //Selecciona todos los planes haciendo join con portalbycategory List<Equipo> equiposList = (from pp in portaldb.vw_PortalProductByCategories join c in portaldb.PortalCategories on pp.IDCategory equals c.IDCategory join p in portaldb.Productos on pp.IDProduct equals p.IDRecurso join nv in portaldb.NameValues on p.nvManufacturer equals nv.IDNameValue where c.CatCode.ToLower() == categoryCode.ToLower() select new Equipo(p.IDProduct, p.ProductName, p.Codigo, p.ProductDescription, p.IDPhotoDefault.HasValue ? parametro + "/Lib/Images.aspx?ID=" + p.IDPhotoDefault : "", nv.Descripcion, p.ProductPrice1, p.ProductPrice2, p.ProductStock, (from pr in portaldb.ProductReviews where pr.IDProduct == p.IDProduct select pr.Score).FirstOrDefault(), (from ps in portaldb.vw_ProductSpecs where ps.IDProduct == p.IDProduct select new ParCaracteristicas(ps.Especificacion, ps.Value)).ToList() , parametro + "Master/Claro/Secciones/ShowProductMovil.aspx?ID=" + p.IDProduct)) .ToList(); return equiposList; }
public static IEnumerable<Equipo> byPlan(string planCode) { PortalDataContext portaldb = new PortalDataContext(ACommerce.BO.Comun.GetConnString()); SecurityDataContext secdb = new SecurityDataContext(ACommerce.BO.Comun.GetConnString()); TiendaDataContext tiendadb = new TiendaDataContext(ACommerce.BO.Comun.GetConnString()); // From i In tiendadb.ProductReviews Where i.IDProduct = _idProduct Select i.Score string parametro = secdb.Parametros.Where(p => p.Codigo.Equals("URL_head")).FirstOrDefault().Valor.ToString(); //Selecciona todos los planes haciendo join con portalbycategory List<Equipo> equiposList = (from pe in portaldb.vw_Producto_Plans join p in portaldb.Productos on pe.IDProduct equals p.IDProduct where pe.CodigoPlan == planCode && pe.Estatus_Produto == "Activo" && pe.Estatus_Plan == "Activo" && pe.LineType == "S" select new Equipo(p.IDProduct, pe.Nombre_Producto, p.Codigo, HtmlRemoval.StripTagsCharArray(p.ProductDescription), p.IDPhotoDefault.HasValue ? parametro + "/Lib/Images.aspx?ID=" + p.IDPhotoDefault + "&thum=1": "", (from nv in portaldb.NameValues where nv.IDNameValue == p.nvManufacturer select nv.Descripcion).FirstOrDefault().ToString(), p.ProductPrice1, p.ProductPrice2, p.ProductStock, (from pr in portaldb.ProductReviews where pr.IDProduct == p.IDProduct select pr.Score).FirstOrDefault(), (from ps in portaldb.vw_ProductSpecs where ps.IDProduct == p.IDProduct select new ParCaracteristicas(ps.Especificacion, ps.Value)).ToList() , parametro + "Master/Claro/Secciones/ShowProductMovil.aspx?ID=" + p.IDProduct)) .ToList(); return equiposList; }
public SecurityService(SecurityDataContext dataContext) { _dataContext = dataContext; }
public void CreateReference(Reference entity) { SecurityDataContext context = new SecurityDataContext(); context.References.InsertOnSubmit(entity); context.SubmitChanges(); }
public Account Get(Guid Id) { SecurityDataContext context = new SecurityDataContext(); var result = context.Accounts.Single(x => x.Id == Id); return result; }
public Reference GetReferenceById(Guid id) { SecurityDataContext context = new SecurityDataContext(); return context.References.FirstOrDefault(x => x.Id == id); }
public GenericRepository(SecurityDataContext context) { this.context = context; this.dbSet = context.Set <TEntity>(); }
public List<Reference> GetReferenceList() { SecurityDataContext context = new SecurityDataContext(); return context.References.Where(x => x.IsDeleted == false || x.IsDeleted == null).ToList(); }
public void CreateAccount(Account entity) { SecurityDataContext context = new SecurityDataContext(); context.Accounts.InsertOnSubmit(entity); context.SubmitChanges(); }
public SecurityConfigurationManager(SecurityDataContext ctx) { this.ctx = ctx; }
public List<AccountProfile> GetAccountProfileList() { SecurityDataContext context = new SecurityDataContext(); return context.AccountProfiles.Where(x => x.IsDeleted == false).ToList(); }
public static void SeedAdminUser(SecurityDataContext db) { // 2 managers sharing the same DBContext coming from Seed methde implementation ApplicationUserManager userManager = new ApplicationUserManager(new UserStore <ApplicationUser>(db)); SecurityConfigurationManager ConfigManager = new SecurityConfigurationManager(db); const string name = AppConfig.AdminName; const string mail = AppConfig.AdminEmail; const string password = AppConfig.AdminPassword; var user = userManager.FindByName(name); if (user != null) { userManager.Delete(user); } user = new ApplicationUser { UserName = name, Email = mail }; user.EmailConfirmed = true; IdentityResult result = userManager.Create(user, password); result = userManager.SetLockoutEnabled(user.Id, false); // Seed admin Authorizations ApplicationAuthorization AdminAuth = new ApplicationAuthorization(); AdminAuth.Code = AuthorizationCode.SuperAdmin; AdminAuth.Description = "All access from all client type"; AdminAuth.Name = "SuperAdmin"; ConfigManager.AddApplicationAuthorization(AdminAuth); //Seed default ClientApplications ClientApplication WPFApp = new ClientApplication(); WPFApp.ApplicationDescription = "WPF client application"; WPFApp.ApplicationCode = "WPF"; WPFApp.ApplicationSecret = "WPF123"; ConfigManager.AddClientApplication(WPFApp); userManager.AuthorizeApplicationtoClient(WPFApp, user, db); ClientApplication WebApp = new ClientApplication(); WebApp.ApplicationDescription = "WEB client application"; WebApp.ApplicationCode = "WEB"; WebApp.ApplicationSecret = "WEB123"; ConfigManager.AddClientApplication(WebApp); userManager.AuthorizeApplicationtoClient(WebApp, user, db); ClientApplication WStoreApp = new ClientApplication(); WStoreApp.ApplicationDescription = "WStore client application"; WStoreApp.ApplicationCode = "WStore"; WStoreApp.ApplicationSecret = "WStore123"; ConfigManager.AddClientApplication(WStoreApp); userManager.AuthorizeApplicationtoClient(WStoreApp, user, db); // Assign ClientAutorisation to user userManager.AssignAuthForClientAppToUser(AdminAuth, WPFApp, user, db); userManager.AssignAuthForClientAppToUser(AdminAuth, WebApp, user, db); userManager.AssignAuthForClientAppToUser(AdminAuth, WStoreApp, user, db); }
public System.Web.Operator GetOperator(string username) { System.Web.Operator optr = new System.Web.Operator(); SecurityDataContext context = new SecurityDataContext(); var acct = context.Accounts.Where(a => a.UserName == username).FirstOrDefault(); if (acct != null) { optr.Id = acct.Id; optr.UserName = acct.UserName; optr.Email = acct.Email; optr.PersonId = acct.ProfileId; optr.IsDisabled = acct.IsDeleted.HasValue ? acct.IsDeleted.Value : false; Roles roles = new Roles(); if (acct != null) { roles.AddRange(GetRoles(acct.Id)); optr.Roles = roles; } } return optr; }