public List<ModuloRoles> GetRoles(string Modulo, string UserName)
        {
            var userStore = new UserStore<IdentityUser>();
            var userMgr = new UserManager<IdentityUser>(userStore);
            var user = userMgr.FindByName(UserName);

            ctx = new ieEntities();

            List<ModuloRoles> lm = ctx.fc_menu.Where(t => t.fc_modulo == Modulo && t.fc_menuid != t.fc_padreid && t.fc_roles != null).OrderBy(t => t.fc_posicion)
                .Select(t => new ModuloRoles
                {
                    Modulo = t.fc_modulo,
                    Roles = t.fc_roles,
                    Titulo = t.fc_titulo
                }).Distinct().ToList();
            foreach (ModuloRoles item in lm)
            {
                if (item.Roles != null)
                {
                    item.hasRol = (userMgr.IsInRole(user.Id, item.Roles));
                }

            }
            return lm;
        }
 public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager)
 {
     // Note the authenticationType must match the one defined in CookieAuthenticationOptions.AuthenticationType
     var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie);
     // Add custom user claims here
     return userIdentity;
 }
        protected void CreateUser_Click(object sender, EventArgs e)
        {
            // Default UserStore constructor uses the default connection string named: DefaultConnection
            var userStore = new UserStore<IdentityUser>();
            var manager = new UserManager<IdentityUser>(userStore);

            var user = new IdentityUser() { UserName = UserName.Text };
            IdentityResult result = manager.Create(user, Password.Text);

            if (result.Succeeded)
            {
                StatusMessage.Text = string.Format("User {0} was created successfully!", user.UserName);
            }
            else
            {
                StatusMessage.Text = result.Errors.FirstOrDefault();
            }
        }
 public ByARpt Forzar_Cambio_Clave(USUARIOS_DTO Reg)
 {
     try
     {
         var userStore = new UserStore<IdentityUser>();
         var manager = new UserManager<IdentityUser>(userStore);
         var user = manager.FindByName(Reg.USERNAME);
         manager.RemovePassword(user.Id);
         manager.AddPassword(user.Id, Reg.PASSWORD);
         byaRpt.Mensaje = "Se realizó el cambio de contraseña";
         byaRpt.Error = false;
     }
     catch (System.Exception ex)
     {
         byaRpt.Mensaje = "Error de App:" + ex.Message;
         byaRpt.Error = true;
     }
     return byaRpt;
 }
Exemple #5
0
        public string GenerarRoles()
        {
            var roleStore = new RoleStore<IdentityRole>();
            var roleMgr = new RoleManager<IdentityRole>(roleStore);

            var userStore = new UserStore<IdentityUser>();
            var userMgr = new UserManager<IdentityUser>(userStore);
            var user = userMgr.FindByName(_ADMIN);

            IdentityResult IdRoleResult;
            IdentityResult IdUserResult;

            using (ieEntities ctx = new ieEntities())
            {
                string strrole = "";
                List<fc_menu> lm = ctx.fc_menu.Where(t => !String.IsNullOrEmpty(t.fc_roles)).ToList();
                foreach (fc_menu im in lm)
                {
                    string rol = im.fc_roles;
                    //!String.IsNullOrEmpty(rol) &&
                    bool RolExiste = roleMgr.RoleExists(rol);

                    if ((!RolExiste))
                    {
                        IdRoleResult = roleMgr.Create(new IdentityRole(rol));
                        IdUserResult = userMgr.AddToRole(user.Id, rol);
                        strrole = strrole + rol + "<br>";
                    }
                    else
                    {
                        bool adminTieneElRol = userMgr.IsInRole(user.Id, rol);
                        if (!adminTieneElRol)
                        {
                            IdUserResult = userMgr.AddToRole(user.Id, rol);
                            strrole = strrole + rol + "<br>";
                        }
                    }
                }
                    return strrole;
            }
        }
        public List<dataTree> getOpciones(string modulo, string usuario)
        {
            var userStore = new UserStore<IdentityUser>();
            var userMgr = new UserManager<IdentityUser>(userStore);
            var user = userMgr.FindByName(usuario);

            List<dataTree> lt;
            using (ctx = new ieEntities())
            {

                lt = ctx.fc_menu.Where(t => t.fc_modulo == modulo && t.fc_menuid != t.fc_padreid && t.fc_habilitado == 1).OrderBy(t=> t.fc_posicion).Select(t => new dataTree
                {
                    id = t.fc_menuid,
                    text = t.fc_titulo,
                    value = new valueTree { icono = t.fc_icono, descripcion = t.fc_descripcion, target = t.fc_target, url = t.fc_url, roles = t.fc_roles },
                    parentid = t.fc_menuid == t.fc_padreid ? "-1" : t.fc_padreid,roles = t.fc_roles
                }
                ).ToList();

                lt = lt.Where(t => (t.parentid == "-1") || (userMgr.IsInRole(user.Id, t.roles))).ToList();

            return lt;
            }
        }
        public ActionResult RoleAddToUser(string roleName, string userName)
        {
            List<string> roles;
            List<string> users;
            using (var context = new ApplicationDbContext())
            {
                var roleStore = new RoleStore<IdentityRole>(context);
                var roleManager = new RoleManager<IdentityRole>(roleStore);

                var userStore = new UserStore<ApplicationUser>(context);
                var userManager = new UserManager<ApplicationUser>(userStore);

                users = (from u in userManager.Users select u.UserName).ToList();

                var user = userManager.FindByName(userName);
                if (user == null)
                    throw new Exception("User not found!");

                var role = roleManager.FindByName(roleName);
                if (role == null)
                    throw new Exception("Role not found!");

                if (userManager.IsInRole(user.Id, role.Name))
                {
                    ViewBag.ResultMessage = "This user already has the role specified !";
                }
                else
                {
                    userManager.AddToRole(user.Id, role.Name);
                    context.SaveChanges();

                    ViewBag.ResultMessage = "Username added to the role succesfully !";
                }

                roles = (from r in roleManager.Roles select r.Name).ToList();
            }

            ViewBag.Roles = new SelectList(roles);
            ViewBag.Users = new SelectList(users);
            return View();
        }
 public override void Initialize(string name, System.Collections.Specialized.NameValueCollection config)
 {
     _connectionStringName = config["connectionStringName"];
     _userManager = new UserManager(_connectionStringName);
     base.Initialize(name, config);
 }
        public ActionResult GetRoles(string userName)
        {
            if (!string.IsNullOrWhiteSpace(userName))
            {
                List<string> userRoles;
                List<string> roles;
                List<string> users;
                using (var context = new ApplicationDbContext())
                {
                    var roleStore = new RoleStore<IdentityRole>(context);
                    var roleManager = new RoleManager<IdentityRole>(roleStore);

                    roles = (from r in roleManager.Roles select r.Name).ToList();

                    var userStore = new UserStore<ApplicationUser>(context);
                    var userManager = new UserManager<ApplicationUser>(userStore);

                    users = (from u in userManager.Users select u.UserName).ToList();

                    var user = userManager.FindByName(userName);
                    if (user == null)
                        throw new Exception("User not found!");

                    var userRoleIds = (from r in user.Roles select r.RoleId);
                    userRoles = (from id in userRoleIds
                                 let r = roleManager.FindById(id)
                                 select r.Name).ToList();
                }

                ViewBag.Roles = new SelectList(roles);
                ViewBag.Users = new SelectList(users);
                ViewBag.RolesForThisUser = userRoles;
            }

            return View("RoleAddToUser");
        }
Exemple #10
0
 protected override void Dispose(bool disposing)
 {
     if (disposing && UserManager != null)
     {
         UserManager.Dispose();
         UserManager = null;
     }
     base.Dispose(disposing);
 }
Exemple #11
0
        public async Task<ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {

                var userStore = new UserStore<ApplicationUser>(new ApplicationDbContext());
                var userManager = new UserManager<ApplicationUser>(userStore);
                var roleStore = new RoleStore<IdentityRole>(new ApplicationDbContext());
                var roleManager = new RoleManager<IdentityRole>(roleStore);
                //roleManager.Create(new IdentityRole("Admin"));
                //roleManager.Create(new IdentityRole("Agent"));
                //roleManager.Create(new IdentityRole("Manager"));
                //roleManager.Create(new IdentityRole("Doctor"));
                //  UserManager.AddToRole(model.UserName,)
                var user = new ApplicationUser() { UserName = model.UserName };
               
                var result = await UserManager.CreateAsync(user, model.Password);
                if (result.Succeeded)
                {
                    DAL.Models.User userModel = new User();
                    userModel.UserName = model.UserName;
                    userModel.DistributionCenterId = model.DistributionCenterId;
                    userModel.RoleId = model.RoleId;
                    userModel.Password = model.Password;
                    userModel.Email = model.EmailAddress;
                    userModel.FullName = model.FullName;
                    var role = userContracts.GetAllRoles().FirstOrDefault(x=>x.RoleId== model.RoleId);
                    var firstOrDefault = UserManager.Users.ToList().FirstOrDefault(x => x.UserName == model.UserName);
                    if (firstOrDefault != null)
                        userManager.AddToRole(firstOrDefault.Id, role.RoleName);
                    userContracts.Add(userModel);
                    await SignInAsync(user, isPersistent: false);

                    return RedirectToAction("Index", "Home");
                }
                else
                {
                    ViewBag.DistributionCenterId = new SelectList(dcContracts.GetAll(), "DistributionCenterId", "Name");
                    ViewBag.RoleId = new SelectList(userContracts.GetAllRoles(), "RoleId", "RoleName");
                    AddErrors(result);
                }
            }

            // If we got this far, something failed, redisplay form
            return View(model);
        }
        public ActionResult DeleteRoleForUser(string userName, string roleName)
        {
            List<string> userRoles;
            List<string> roles;
            List<string> users;
            using (var context = new ApplicationDbContext())
            {
                var roleStore = new RoleStore<IdentityRole>(context);
                var roleManager = new RoleManager<IdentityRole>(roleStore);

                roles = (from r in roleManager.Roles select r.Name).ToList();

                var userStore = new UserStore<ApplicationUser>(context);
                var userManager = new UserManager<ApplicationUser>(userStore);

                users = (from u in userManager.Users select u.UserName).ToList();

                var user = userManager.FindByName(userName);
                if (user == null)
                    throw new Exception("User not found!");

                if (userManager.IsInRole(user.Id, roleName))
                {
                    userManager.RemoveFromRole(user.Id, roleName);
                    context.SaveChanges();

                    ViewBag.ResultMessage = "Role removed from this user successfully !";
                }
                else
                {
                    ViewBag.ResultMessage = "This user doesn't belong to selected role.";
                }

                var userRoleIds = (from r in user.Roles select r.RoleId);
                userRoles = (from id in userRoleIds
                             let r = roleManager.FindById(id)
                             select r.Name).ToList();
            }

            ViewBag.RolesForThisUser = userRoles;
            ViewBag.Roles = new SelectList(roles);
            ViewBag.Users = new SelectList(users);
            return View("RoleAddToUser");
        }
Exemple #13
0
        public AccountController(UserManager<ApplicationUser> userManager)
        {


            UserManager = userManager;
        }
        public ActionResult RoleAddToUser()
        {
            List<string> roles;
            List<string> users;
            using (var context = new ApplicationDbContext())
            {
                var roleStore = new RoleStore<IdentityRole>(context);
                var roleManager = new RoleManager<IdentityRole>(roleStore);

                var userStore = new UserStore<ApplicationUser>(context);
                var userManager = new UserManager<ApplicationUser>(userStore);

                users = (from u in userManager.Users select u.UserName).ToList();
                roles = (from r in roleManager.Roles select r.Name).ToList();
            }

            ViewBag.Roles = new SelectList(roles);
            ViewBag.Users = new SelectList(users);
            return View();
        }
Exemple #15
0
 public IdentityUser Validar(string username, string password)
 {
     var userStore = new UserStore<IdentityUser>();
     var userManager = new UserManager<IdentityUser>(userStore);
     IdentityUser user = userManager.Find(username, password);
     return user;
 }
Exemple #16
0
        public ByARpt InsUsuarios(USUARIOS_DTO Reg)
        {
            string Msg = "";
            try
            {
                var userStore = new UserStore<IdentityUser>();
                var manager = new UserManager<IdentityUser>(userStore);
                var user = new IdentityUser() { UserName = Reg.USERNAME };

                IdentityResult result = manager.Create(user, Reg.PASSWORD);

                if (result.Succeeded)
                {
                    byaRpt.Mensaje = string.Format("User {0} was created successfully!", user.UserName);
                }
                else
                {
                    byaRpt.Mensaje = result.Errors.FirstOrDefault();
                }
                byaRpt.Mensaje = Msg;
            }
            catch (Exception ex)
            {
                Msg = ex.Message;
                byaRpt.Error = true;
                byaRpt.Mensaje = Msg;
                return byaRpt;
            }
            return byaRpt;
        }
Exemple #17
0
        public ByARpt GuardarRoles(List<ModuloRoles> lst, string UserName)
        {
            string msg = "";

            var userStore = new UserStore<IdentityUser>();
            var userMgr = new UserManager<IdentityUser>(userStore);
            var user = userMgr.FindByName(UserName);
            IdentityResult IdUserResult;

            foreach (ModuloRoles item in lst)
            {
                bool hasRoolAnt = userMgr.IsInRole(user.Id, item.Roles);
                if (item.hasRol != hasRoolAnt)//Si cambió
                {
                    try
                    {
                        if (item.hasRol)
                        {
                            IdUserResult = userMgr.AddToRole(user.Id, item.Roles);
                            msg += String.Format("Se Asignó el Rol {0} - [ {1} ]</br>", item.Titulo, item.Roles);
                        }
                        else
                        {
                            IdUserResult = userMgr.RemoveFromRole(user.Id, item.Roles);
                            msg += String.Format("Se Retiró el Rol {0} - [ {1} ]</br>", item.Titulo, item.Roles);
                        }
                    }
                    catch (Exception ex)
                    {
                        msg = ex.Message;

                    }
                }
            }
            if (String.IsNullOrEmpty(msg))
            {
                byaRpt.Mensaje = "No realizó ningun cambio de Roles al usuario";
            }
            else
            {
                byaRpt.Mensaje = msg;
            }

            byaRpt.Error = false;
            //GuardarRolesUsuarios
            return byaRpt;
        }
Exemple #18
0
 public UserService()
 {
     _ctx = new HeyMonitorContext();
     _userManager = new UserManager<ApplicationUser, long>(new CustomUserStore(_ctx));
 }