public UsersApiTests() { const string issuer = "http://localhost:49345"; const string key = "some-long-secret-key"; // Must initialize and open Sqlite connection in order to keep in-memory database tables _connection = new SqliteConnection("DataSource=:memory:"); _connection.Open(); Startup.ConfigureDbContext = (configuration, builder) => builder.UseSqlite(_connection); var server = new TestServer(new WebHostBuilder() .UseSetting("Tokens:Issuer", issuer) .UseSetting("Tokens:Key", key) .UseStartup <Startup>() .UseUrls("https://localhost:49345")) { BaseAddress = new Uri("https://localhost:49345") }; // Force creation of InMemory database var dbContext = server.Services.GetService <TimeTrackerDbContext>(); dbContext.Database.EnsureCreated(); _client = server.CreateClient(); _nonAdminToken = JwtTokenGenerator.Generate( "aspnetcore-workshop-demo", false, issuer, key); _adminToken = JwtTokenGenerator.Generate( "aspnetcore-workshop-demo", true, issuer, key); }
public IActionResult GetToken(string name = "aspnetcore-workshop-demo", bool admin = false) { var jwt = JwtTokenGenerator .Generate(name, admin, _configuration["Tokens:Issuer"], _configuration["Tokens:Key"]); return(Ok(jwt)); }
public IActionResult GenerateToken(string name = "aspnetcore-workshop-demo", bool admin = false, bool superUser = false, bool user = false, bool guest = false) { var jwt = JwtTokenGenerator .Generate(name, admin, superUser, user, guest, _configuration["Tokens:Issuer"], _configuration["Tokens:Key"]); return(Ok(new { token = jwt })); }
public IActionResult GenerateToken(string name = "dockertalk") { var jwt = JwtTokenGenerator .Generate(name, true, _configuration["Tokens:Issuer"], _configuration["Tokens:Key"]); return(Ok(jwt)); }
public AuthResponse Authenticate(AuthRequest model) { if (_user.Username == model.Username && _user.Password == model.Password) { var token = JwtTokenGenerator.Generate(_user, _appSettings.GetValue <string>("SecretKey")); return(new AuthResponse(_user, token)); } return(null); }
public GamesApiTests() { const string issuer = "http://localhost:49194"; const string key = "some-long-secret-key"; var server = new TestServer(new WebHostBuilder() .UseStartup <Startup>() .UseSetting("Tokens:Issuer", issuer) .UseSetting("Tokens:Key", key)); _client = server.CreateClient(); _nonAdminToken = JwtTokenGenerator.Generate("mscommunity", false, issuer, key); _adminToken = JwtTokenGenerator.Generate("mscommunity", true, issuer, key); }
public async Task <IActionResult> Login([FromBody] LoginRequest model) { User user = await userManager.FindByNameAsync(model.UserName); if (user != null) { if (await userManager.CheckPasswordAsync(user, model.Password)) { DateTime now = DateTime.Now; if (user.LastSignedAt == null || user.LastSignedAt < now) { user.LastSignedAt = now; await userManager.UpdateAsync(user); } var claims = new List <Claim>() { new Claim(ClaimTypes.Name, user.UserName), new Claim(ClaimTypes.NameIdentifier, user.Id) }; if (model.IsAutoRenewable) { string refreshToken = GenerateRefreshToken(); string tokenName = Guid.NewGuid().ToString(); claims.Add(new Claim(JwtTokenGenerator.ClaimTypes.RefreshToken, refreshToken)); claims.Add(new Claim(JwtTokenGenerator.ClaimTypes.TokenName, tokenName)); await userManager.SetAuthenticationTokenAsync(user, JwtTokenGenerator.ClaimTypes.RefreshToken, tokenName, refreshToken); } var token = tokenGenerator.Generate(claims); var response = new LoginResponse() { Token = token }; return(Content(json.Serialize(response), "text/json")); } } return(BadRequest()); }
public GamesApiTests() { const string issuer = "http://localhost:44303"; const string key = "some-long-secret-key"; var server = new TestServer(new WebHostBuilder() .UseStartup <Startup>().UseUrls("https://localhost:44303") .UseSetting("Tokens:Issuer", issuer) .UseSetting("Tokens:Key", key)) { BaseAddress = new Uri("https://localhost:44303") }; _client = server.CreateClient(); _nonAdminToken = JwtTokenGenerator.Generate( "aspnetcore-api-demo", false, issuer, key); _adminToken = JwtTokenGenerator.Generate( "aspnetcore-api-demo", true, issuer, key); }
public IActionResult Verify([FromBody] VerificationModel verificationModel) { if (ModelState.IsValid) { var user = _userRepository.FindByPhoneNumber(verificationModel.PhoneNumber); if (user == null) { return(Ok(ServiceResult.Error("کاربری یافت نشد"))); } else { if (user.ActivationCode == verificationModel.ActivationCode) { // check time var nowDate = DateTime.Now; var elabsedTime = nowDate - user.CreateActivationCodeDate; if (elabsedTime.Duration().TotalSeconds > 240) { return(Ok(ServiceResult.Error("کد فعالسازی اعتباری ندارد"))); } else { var token = _jwtTokenGenerator.Generate(user); return(Ok(ServiceResult.Okay(token))); } } else { return(Ok(ServiceResult.Error("کد فعالسازی نامعتبر می باشد"))); } } } return(Ok(ServiceResult.Error("model is not valid"))); }
public UsersApiTests() { const string issuer = "http://localhost:44383"; const string key = "sjlksdhcroaishsdjflksdfashfiufiuahdfiuhfiasudiiu"; var server = new TestServer(new WebHostBuilder() .UseSetting("Tokens:Issuer", issuer) .UseSetting("Tokens:Key", key) .UseSetting("ConnectionStrings:DefaultConnection", "DataSource=:memory:") .UseStartup <Startup>() .UseUrls("https://localhost:44383")) { BaseAddress = new Uri("https://localhost:44383") }; _client = server.CreateClient(); _nonAdminToken = JwtTokenGenerator.Generate( "etf-workshop", false, issuer, key); _adminToken = JwtTokenGenerator.Generate( "etf-workshop", true, issuer, key); }
public UsersApiTests() { const string issuer = "http://localhost:44383"; const string key = "some-long-secret-key"; var server = new TestServer(new WebHostBuilder() .UseSetting("Tokens:Issuer", issuer) .UseSetting("Tokens:Key", key) .UseSetting("ConnectionStrings:DefaultConnection", "DataSource=:memory:") .UseStartup <Startup>() .UseUrls("https://localhost:44383")) { BaseAddress = new Uri("https://localhost:44383") }; _client = server.CreateClient(); _nonAdminToken = JwtTokenGenerator.Generate( "aspnetcore-workshop-demo", false, issuer, key); _adminToken = JwtTokenGenerator.Generate( "aspnetcore-workshop-demo", true, issuer, key); }
public UsersApiTests() { const string issuer = "https://localhost:44383"; const string key = "jdfksjdsjkdfkljksdlf"; //Key iz appsettings.json var server = new TestServer(new WebHostBuilder() .UseSetting("Tokens:Issuer", issuer) .UseSetting("Tokens:Key", key) .UseSetting("ConnectionStrings:DefaultConnection", "DataSource=:memory:") .UseStartup <Startup>() .UseUrls("https://localhost:44383")) { BaseAddress = new Uri("https://localhost:44383") }; _client = server.CreateClient(); _nonAdminToken = JwtTokenGenerator.Generate( "etf-workshop", false, issuer, key); _adminToken = JwtTokenGenerator.Generate( "etf-workshop", true, issuer, key); }
public UsersApiTests() { const string issuer = "http://localhost:44365"; const string key = "fskfjlsdfnrweljsdhfsjkfhasfkaghsfasgfashgfahr"; var server = new TestServer(new WebHostBuilder() .UseSetting("Tokens:Issuer", issuer) .UseSetting("Tokens:Key", key) .UseSetting("ConnectionStrings:DefaultConnection", "DataSource=:memory:") .UseStartup <Startup>() .UseUrls("https://localhost:44365")) { BaseAddress = new Uri("https://localhost:44365") }; _client = server.CreateClient(); _nonAdminToken = JwtTokenGenerator.Generate( "etf-workshop", false, issuer, key); _adminToken = JwtTokenGenerator.Generate( "etf-workshop", true, issuer, key); }
public IActionResult GenerateToken(string korisnickoIme) { bool admin = false; var korisnik = _korisnikServis.DajKorisnikaPoKorisnickomImenu(korisnickoIme).Result; if (korisnik == null) { ModelGreske greska = new ModelGreske { PorukaGreske = Greske.AUTENTIKACIJA_POGRESNO_KORISNICKO_IME, StatusKod = System.Net.HttpStatusCode.BadRequest }; return(BadRequest(greska)); } admin = korisnik.isAdmin; var jwt = JwtTokenGenerator .Generate(korisnickoIme, admin, _configuration["Tokens:Issuer"], _configuration["Tokens:Key"]); return(Ok(new { token = jwt })); }
public UsersApiTests() { const string issuer = "https://localhost:44349"; const string key = "nemosodleecheva_faoeifhaohhhoiehfoaiehfoiefasf"; var server = new TestServer(new WebHostBuilder() .UseSetting("Tokens:Issuer", issuer) .UseSetting("Tokens:Key", key) .UseSetting("ConnectionStrings:DefaultConnection", "DataSource=:memory:") .UseStartup <Startup>() .UseUrls("https://localhost:44349")) { BaseAddress = new Uri("https://localhost:44349") }; _client = server.CreateClient(); _nonAdminToken = JwtTokenGenerator.Generate( "etf-workshop", false, issuer, key); _adminToken = JwtTokenGenerator.Generate( "etf-workshop", true, issuer, key); }
public UsersApiTests() { const string issuer = "http://localhost:44397"; const string key = "asdfmkafksdlfklnmkkasnkasvndndkndfkanjdfa"; // kreiranje servera var server = new TestServer(new WebHostBuilder() .UseSetting("Tokens:Issuer", issuer) .UseSetting("Tokens:Key", key) .UseSetting("ConnectionStrings:DefaultConnection", "DataSource=:memory:") // sqlite - koristi svoju in memory implementaciju baze .UseStartup <Startup>() .UseUrls("https://localhost:44397")) { BaseAddress = new Uri("https://localhost:44397") }; _client = server.CreateClient(); _nonAdminToken = JwtTokenGenerator.Generate( "etf-workshop", false, issuer, key); _adminToken = JwtTokenGenerator.Generate( "etf-workshop", true, issuer, key); }