Ejemplo n.º 1
0
        public void DevoAdicionarUsuario()
        {
            _userStore.Add(_userDto);

            _userRepositoryMock.Verify(r => r.Add(It.Is <User>(
                                                      c => c.Nome == _userDto.Nome &&
                                                      c.CPF == _userDto.CPF
                                                      )));
        }
Ejemplo n.º 2
0
        public async Task Authenticated_AlreadyInUserStore_LeavesApiKey()
        {
            request.User = domainAdminUser;
            store.Add(new ApiUser {
                Username = domainAdminUser.Identity.Name, Key = "idemponent", Roles = new[] { RoleNames.AccountAdministrator }
            });

            await middleware.Invoke(context);

            var apiUser = store.FindByUsername(domainAdminUser.Identity.Name);

            Assert.That(apiUser.Key, Is.EqualTo("idemponent"), "apiUser.Key");
        }
Ejemplo n.º 3
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            UserStore userStore = new UserStore();

            userStore.Add(new User(Guid.Parse("F2845A10-5C9A-41EB-A91F-863BC0D2E716"), "dani"), "iszap");

            services.AddDataProtection()
            .SetApplicationName("poc-ropc-oauth")
            .PersistKeysToFileSystem(new DirectoryInfo("app-keys"));

            services.AddAuthentication(options => options.DefaultScheme = OpenIdConnectConstants.Schemes.Bearer)
            .AddOpenIdConnectServer(options =>
            {
                // Create your own authorization provider by subclassing
                // the OpenIdConnectServerProvider base class.
                options.Provider = new AuthorizationProvider(userStore);
                // Enable token endpoints.
                options.TokenEndpointPath = "/auth/token";
                // During development, you can set AllowInsecureHttp
                // to true to disable the HTTPS requirement.
                options.AllowInsecureHttp = true;
                // issue an access token that expires in 24 hours
                options.AccessTokenLifetime = TimeSpan.FromHours(24);
                // issue a refresh token that expires in 14 days
                // options.RefreshTokenLifetime = TimeSpan.FromDays(14);
            })
            .AddOAuthValidation();

            services.AddMvc(options => options.Filters.Add(new AuthorizeFilter()))
            .SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
        }
Ejemplo n.º 4
0
 public IActionResult Create([Bind("Title")] User user)
 {
     if (ModelState.IsValid)
     {
         _userStore.Add(user);
         return(RedirectToAction(nameof(Index)));
     }
     return(View(user));
 }
Ejemplo n.º 5
0
 public void CreateUser()
 {
     var store = new UserStore();
     var password = new SecureString();
     "test password".ToCharArray().ToList().ForEach(password.AppendChar);
     var testUser = User.Create("test user", password);
     if (store.UserExists(testUser.UserName))
     {
         store.Remove(testUser);
     }
     store.Add(testUser);
 }
Ejemplo n.º 6
0
 public async Task <IHttpActionResult> SignupUser(User user)
 {
     try
     {
         UserStore.Add(user);
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
     return(Ok());
 }
Ejemplo n.º 7
0
        public async Task <User> SignUp([FromForm] string name, [FromForm] string passwd, [FromForm] string email,
                                        [FromForm] long phone_number, [FromForm] DateTime birthdate)
        {
            if (await UserStore.Exists(email))
            {
                HttpContext.Response.StatusCode = (int)HttpStatusCode.Conflict;
                return(null);
            }
            var user = new User(name, email, passwd, new LocalDateTime(birthdate), phone_number);
            await UserStore.Add(user);

            user._passwd = "[REDACTED]";
            return(user);
        }
Ejemplo n.º 8
0
        public async Task <User> Creds([FromForm] string email = null, [FromForm] string passwd = null, [FromHeader] string token = null)
        {
            string user;

            if (token != null &&
                (user = JwtBuilder.UserJwtToken(token).Result) != null)
            {
                var u = UserStore.Get(user).Result;
                if (u == null)
                {
                    HttpContext.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
                    HttpContext.Response.Headers.Remove("auth");
                    return(null);
                }
                if (email != null)
                {
                    if (UserStore.Exists(email).Result)
                    {
                        HttpContext.Response.StatusCode = (int)HttpStatusCode.Conflict;
                        return(null);
                    }

                    u._email = email;
                    token    = await JwtBuilder.CreateJWTAsync(u, "KitchenAuth", "KicthenAuth", 1);
                }

                if (passwd != null)
                {
                    u._passwd = passwd;
                }

                await UserStore.Add(u);

                HttpContext.Response.Headers.Add("auth", token);
                HttpContext.Response.StatusCode = (int)HttpStatusCode.OK;

                return(u);
            }

            HttpContext.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
            HttpContext.Response.Headers.Remove("auth");
            return(null);
        }
        public async Task <User> Edit([FromHeader] string auth, [FromForm] DateTime birthday = default,
                                      [FromForm] string name = null, [FromForm] long?phone_number = null)
        {
            string user;

            if ((user = JwtBuilder.UserJwtToken(auth).Result) == null)
            {
                HttpContext.Response.StatusCode = (int)HttpStatusCode.NotFound;
                return(null);
            }

            var u = UserStore.Get(user).Result;

            if (u == null)
            {
                HttpContext.Response.StatusCode = (int)HttpStatusCode.NotFound;
                return(null);
            }

            if (birthday != default)
            {
                u._birthdate = new LocalDateTime(birthday);
            }

            if (name != null)
            {
                u._name = name;
            }

            if (phone_number != null)
            {
                u._phone_number = (long)phone_number;
            }

            await UserStore.Add(u);

            HttpContext.Response.Headers.Add("auth", auth);

            return(u);
        }
Ejemplo n.º 10
0
 public IActionResult Salvar([FromBody] UserDto model)
 {
     _userStore.Add(model);
     return(Ok());
 }