Exemple #1
0
        public IActionResult PostNewUser(string eMail, string password)
        {
            if (string.IsNullOrEmpty(eMail) || string.IsNullOrEmpty(password))
            {
                return(BadRequest());
            }

            var newAuthUser = new AuthUser
            {
                Email    = eMail,
                Password = AuthUtils.GenerateHashedPassword(password),
                Role     = "User"
            };

            _users.Add(newAuthUser);

            //try
            //{
            //    await _unitOfWork.Users.AddAsync(newAuthUser);
            //    await _unitOfWork.SaveChangesAsync();
            //}
            //catch (Exception ex)
            //{
            //    return BadRequest(ex.Message);
            //}

            //_users.Add(newAuthUser);

            return(NoContent());
        }
        public async Task <IActionResult> PostNewUser(string eMail, string password)
        {
            if (string.IsNullOrEmpty(eMail) || string.IsNullOrEmpty(password))
            {
                return(BadRequest());
            }

            AuthUser userInDb = await _unitOfWork.AuthUsers.GetByEmailAsync(eMail);

            if (userInDb != null)
            {
                return(BadRequest());
            }

            var newAuthUser = new AuthUser
            {
                Email    = eMail,
                Password = AuthUtils.GenerateHashedPassword(password),
                UserRole = "User"
            };

            try
            {
                await _unitOfWork.AuthUsers.AddAsync(newAuthUser);

                await _unitOfWork.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }

            //_users.Add(newAuthUser);
            return(NoContent());
        }
Exemple #3
0
        public async Task <IActionResult> Register(string email, string password /*[FromBody] AuthUser model*/)
        {
            var authUser = _authUsers.SingleOrDefault(u => u.Email == email);

            if (authUser != null)
            {
                return(BadRequest(new
                {
                    Status = "Error",
                    Message = "User already exists!"
                }));
            }
            string hashText = AuthUtils.GenerateHashedPassword(password);

            authUser = new AuthUser
            {
                Email    = email,
                Password = hashText,
                UserRole = "User"
            };



            try
            {
                await _unitOfWork.UserRepository.AddAsync(authUser);

                await _unitOfWork.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
            return(Ok(authUser));
        }
Exemple #4
0
        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            modelBuilder.Entity <TestCenter>()
            .HasMany(u => u.AvailableInCampaigns);
            modelBuilder.Entity <Campaign>()
            .HasMany(u => u.AvailableTestCenters);
            base.OnModelCreating(modelBuilder);

            modelBuilder.Entity <AuthRole>().HasData(new AuthRole {
                Id = 1, Name = "Admin"
            });
            modelBuilder.Entity <AuthRole>().HasData(new AuthRole {
                Id = 2, Name = "User"
            });
            modelBuilder.Entity <AuthUser>().HasData(new AuthUser
            {
                Id       = 1,
                UserRole = "Admin",
                Email    = "*****@*****.**",
                Password = AuthUtils.GenerateHashedPassword("*****@*****.**")
            });
            modelBuilder.Entity <AuthUser>().HasData(new AuthUser
            {
                Id       = 2,
                UserRole = "User",
                Email    = "*****@*****.**",
                Password = AuthUtils.GenerateHashedPassword("*****@*****.**")
            });
        }
Exemple #5
0
        public ActionResult OnPost()
        {
            if (!ModelState.IsValid)
            {
                return(Page());
            }

            //var user = await _userManager.FindByNameAsync(AuthUser.Email);
            //if (user != null)
            //{
            //    ModelState.AddModelError(string.Empty, "Register not succeeded!");
            //    return Page();
            //}

            AuthUser newUser = new AuthUser
            {
                Email    = AuthUser.Email,
                Password = AuthUtils.GenerateHashedPassword(AuthUser.Password),
                UserRole = "User"
            };

            LoginModel.AddUser(newUser);

            return(RedirectToPage("/Index"));
        }
Exemple #6
0
        public void GenerateHashedPassword_CallWithPassword_ShouldGenerateCorrectHashedPassword()
        {
            string givenPassword = "******";

            string hashedPassword = AuthUtils.GenerateHashedPassword(givenPassword);

            Assert.IsTrue(AuthUtils.VerifyPassword(givenPassword, hashedPassword));
        }
Exemple #7
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="config"></param>
 public AuthController(IConfiguration config)
 {
     _config    = config;
     _authUsers = new List <AuthUser>
     {
         new AuthUser {
             Email    = "*****@*****.**", Password = AuthUtils.GenerateHashedPassword("12345"),
             UserRole = "Admin"
         },
         new AuthUser {
             Email    = "*****@*****.**", Password = AuthUtils.GenerateHashedPassword("5678"),
             UserRole = "User"
         },
         new AuthUser {
             Email = "*****@*****.**", Password = AuthUtils.GenerateHashedPassword("7890")
         },
     };
 }
Exemple #8
0
        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            base.OnModelCreating(modelBuilder);

            modelBuilder.Entity <AuthUser>().HasData(new AuthUser
            {
                Id       = 1,
                Email    = "*****@*****.**",
                Password = AuthUtils.GenerateHashedPassword("*****@*****.**"),
                UserRole = "Administrator"
            });
            modelBuilder.Entity <AuthUser>().HasData(new AuthUser
            {
                Id       = 2,
                Email    = "*****@*****.**",
                Password = AuthUtils.GenerateHashedPassword("*****@*****.**"),
                UserRole = "User"
            });
        }
Exemple #9
0
        public ActionResult Register(UserDto newUser)
        {
            var users = _authUsers.Where(u => newUser.Email == u.Email);

            // gibt es schon einen Benutzer mit der Mailadresse?
            if (users.Any())
            {
                return(BadRequest(new { Status = "Error", Message = "User already exists!" }));
            }
            // Passwort "salzen" und hashen, dann speichern
            string   hashText = AuthUtils.GenerateHashedPassword(newUser.Password);
            AuthUser authUser = new AuthUser
            {
                Email    = newUser.Email,
                Password = hashText
            };

            _authUsers.Add(authUser);

            return(Ok(authUser));
        }
Exemple #10
0
        public IActionResult Register([FromBody] AuthUser model)
        {
            var authUser = _authUsers.SingleOrDefault(u => u.Email == model.Email);

            if (authUser == null)
            {
                return(BadRequest(new
                {
                    Status = "Error",
                    Message = "User already exists!"
                }));
            }
            string hashText = AuthUtils.GenerateHashedPassword(model.Password);

            authUser = new AuthUser
            {
                Email    = model.Email,
                Password = hashText
            };
            _authUsers.Add(authUser);
            return(Ok(authUser));
        }
Exemple #11
0
        protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            base.OnModelCreating(modelBuilder);

            DateTime from = new DateTime(DateTime.Now.Year - 1, 1, 1);
            DateTime to   = new DateTime(DateTime.Now.Year + 1, 12, 31);

            modelBuilder.Entity <Campaign>().HasData(new Campaign()
            {
                Id = 1, Name = "Test-Kampagne", From = new DateTime(2020, 12, 1), To = new DateTime(2099, 12, 31)
            });
            modelBuilder.Entity <Campaign>().HasData(new Campaign()
            {
                Id = 2, Name = "Antigentest Bildungsbereich (Burgenland)", From = from, To = to
            });
            modelBuilder.Entity <Campaign>().HasData(new Campaign()
            {
                Id = 3, Name = "Antigentest Bildungsbereich (Kärnten)", From = from, To = to
            });
            modelBuilder.Entity <Campaign>().HasData(new Campaign()
            {
                Id = 4, Name = "Antigentest Bildungsbereich (Niederösterreich)", From = from, To = to
            });
            modelBuilder.Entity <Campaign>().HasData(new Campaign()
            {
                Id = 5, Name = "Antigentest Bildungsbereich (Oberösterreich)", From = from, To = to
            });
            modelBuilder.Entity <Campaign>().HasData(new Campaign()
            {
                Id = 6, Name = "Antigentest Bildungsbereich (Salzburg)", From = from, To = to
            });
            modelBuilder.Entity <Campaign>().HasData(new Campaign()
            {
                Id = 7, Name = "Antigentest Bildungsbereich (Steiermark)", From = from, To = to
            });
            modelBuilder.Entity <Campaign>().HasData(new Campaign()
            {
                Id = 8, Name = "Antigentest Bildungsbereich (Tirol)", From = from, To = to
            });
            modelBuilder.Entity <Campaign>().HasData(new Campaign()
            {
                Id = 9, Name = "Antigentest Bildungsbereich (Vorarlberg)", From = from, To = to
            });
            modelBuilder.Entity <Campaign>().HasData(new Campaign()
            {
                Id = 10, Name = "Antigentest Bildungsbereich (Wien)", From = from, To = to
            });

            modelBuilder.Entity <TestCenter>().HasData(new TestCenter()
            {
                Id = 1, Name = "Sporthalle Leonding", City = "Leonding", Postcode = "4060", Street = "Ehrenfellnerstraße 9", SlotCapacity = 5
            });
            modelBuilder.Entity <TestCenter>().HasData(new TestCenter()
            {
                Id = 2, Name = "Kulturzentrum Marchtrenk", City = "Marchtrenk", Postcode = "4614", Street = "Rennerstraße 7", SlotCapacity = 3
            });
            modelBuilder.Entity <TestCenter>().HasData(new TestCenter()
            {
                Id = 3, Name = "Design Center Linz", City = "Linz", Postcode = "4020", Street = "Europaplatz 1", SlotCapacity = 10
            });

            modelBuilder
            .Entity <Campaign>()
            .HasMany(c => c.AvailableTestCenters)
            .WithMany(t => t.AvailableInCampaigns)
            .UsingEntity(j => j.HasData(new[] {
                new { AvailableInCampaignsId = 1, AvailableTestCentersId = 1 },
                new { AvailableInCampaignsId = 1, AvailableTestCentersId = 2 },
                new { AvailableInCampaignsId = 1, AvailableTestCentersId = 3 },
            }));

            modelBuilder.Entity <Role>().HasData(new Role {
                Id = 1, Name = "Admin"
            });
            modelBuilder.Entity <Role>().HasData(new Role {
                Id = 2, Name = "User"
            });
            modelBuilder.Entity <AuthUser>().HasData(new AuthUser
            {
                Id       = 1,
                Email    = "*****@*****.**",
                Password = AuthUtils.GenerateHashedPassword("*****@*****.**")
            });
            modelBuilder.Entity <AuthUser>().HasData(new AuthUser
            {
                Id       = 2,
                Email    = "*****@*****.**",
                Password = AuthUtils.GenerateHashedPassword("*****@*****.**")
            });
        }