public MessageModel <string> GetToken() { return(new MessageModel <string>(JWTTokenService.GetToken(new TokenModelJwt() { Uid = 1, Name = "张三", Role = "admin" }))); }
public static void Main() { // Get User var userRepository = new UserLocalRepository(); var users = userRepository.GetAllUsers(); var admin = users.First(u => u.Role.Id == (int)USER_ROLES.Moderator); #region CheckJWT // Create service string sekcretKey = Guid.NewGuid().ToString(); var tokenService = new JWTTokenService(sekcretKey); // Encode string token = tokenService.GenerateJWTToken(admin?.Id); // Decode AccessToken accessToken = tokenService.ValidateJWTToken(token); // Show System.Console.WriteLine(accessToken); #endregion #region CheckRole UserRoleMiddleware.Invoke(admin, typeof(AdminController), () => new AdminController().SayHello()); #endregion }
protected GenericUserService(ApplicationContext applicationContext, JWTTokenService tokenService, IDataProtectionProvider provider, IStringLocalizer localizer) { this.applicationContext = applicationContext; this.tokenService = tokenService; this.dataProtector = provider.CreateProtector("GenericUserService"); this.localizer = localizer; }
protected BaseUsersService( ApplicationContext dbContext, JWTTokenService jWTTokenService, PasswordService passwordService, IStringLocalizer localizer) { _dbContext = dbContext; _JWTTokenService = jWTTokenService; _passwordService = passwordService; _localizer = localizer; }
public UserServicesMethods() { var testContext = TestContextUtils.CreateInMemoryDbContext(); userRepo = new AppUserRepository(testContext); var tokenService = new JWTTokenService("jfghbk@on345_38*b6b@ac8asdffafg5774a&%67454378*&092mdf", 5); userService = new UserService(userRepo, tokenService); }
public void Init() { _JWTTokenService = new JWTTokenService(); _login = new LoginQuery { Login = "******", Password = "******" }; }
public CustomerService ( ApplicationContext dbContext, PasswordService passwordService, JWTTokenService JWTTokenService, IStringLocalizer localizer ) : base(dbContext, JWTTokenService, passwordService, localizer) { }
public SmartDeviceService ( ApplicationContext dbContext, PasswordService passwordService, JWTTokenService JWTTokenService, IStringLocalizer localizer, SmartDeviceHubService smartDeviceHubService ) : base(dbContext, JWTTokenService, passwordService, localizer) { _smartDeviceHubService = smartDeviceHubService; }
public async Task <MessageModel <object> > LoginAsync(User user) { string Key = $"errorcount_{user.UserNumber}"; int errorcount = cache.GetValue(Key).ToInt(); if (errorcount >= 10) { return(new MessageModel <object>(string.Empty, false, "失败次数过多,请五分钟后再试")); } var ipaddress = HttpContext.Connection.RemoteIpAddress.ToIPv4String(); var userAgent = HttpContext.Request.Headers["User-Agent"]; var agent = new UserAgent(userAgent); var Browser = $"{agent.Browser?.Name} {agent.Browser?.Version}"; var OS = $"{agent.OS?.Name} {agent.OS?.Version}"; var Md5Password = MD5Helper.MD5Encrypt32(user.Password); var User = (await services.Query(p => p.UserNumber == user.UserNumber && p.Password == Md5Password)).FirstOrDefault(); await ioperatingLogServices.Add(new operatingLog { Operating = "登录", Date = DateTime.Now, UserName = user.UserNumber, ip = ipaddress, Browser = Browser, OS = OS, state = User != null && User.UserState == 200 ? 200 : 500, Details = User != null && User.UserState == 200 ? "通过登录授权" : "未通过登录授权" }); if (User != null && User.UserState == 200) { requirement.Permissions = new List <Models.ViewModels.PermissionItemView>(); if (errorcount != 0) { cache.Remove(Key); } User.Password = string.Empty; return(new MessageModel <object>(new { user = User, Token = JWTTokenService.GetToken(new TokenModelJwt() { Uid = User.Id, Name = User.showName, Role = User.PowerName }) })); } else { errorcount++; cache.Set(Key, errorcount, TimeSpan.FromMinutes(5)); return(new MessageModel <object>(null, false, (User != null && User.UserState == 500) ? "账户已冻结" : "账户或密码错误,登录失败")); } }
public GetTokenForUserQueryHanlder(JWTTokenService tokenService, GenericRepository <TblLogins> loginsRepository) { _tokenService = tokenService; _loginsRepository = loginsRepository; }
public DoctorService(ApplicationContext applicationContext, JWTTokenService tokenService, IDataProtectionProvider provider, IStringLocalizer localizer) : base(applicationContext, tokenService, provider, localizer) { }
public UserController(JWTTokenService jWTTokenService, UserService userService, IConfiguration configuration) { this.jWTTokenService = jWTTokenService; this.userService = userService; this.configuration = configuration; }
public DeviceService(ApplicationContext applicationContext, JWTTokenService tokenService, IDataProtectionProvider provider, IStringLocalizer localizer, DeviceHubService deviceHubService) : base(applicationContext, tokenService, provider, localizer) { this.deviceHubService = deviceHubService; protector = provider.CreateProtector("DeviceService"); }
private void JwtBearerConfig(JwtBearerOptions opt) { opt.TokenValidationParameters = JWTTokenService.StandardValidationParameters(Configuration); }
public async Task Invoke(HttpContext context) { if (!context.WebSockets.IsWebSocketRequest) { return; } var socket = await context.WebSockets.AcceptWebSocketAsync(); string token = context.Request.Query["token"]; string userName = string.Empty; string UserId = string.Empty; if (!string.IsNullOrEmpty(token) && token != "null") { TokenModelJwt tokenModelJwt = JWTTokenService.SerializeJwt(token); userName = tokenModelJwt.Name; UserId = tokenModelJwt.Uid.ToString(); } else { var Json = new WebSocketUpdateResponse <string>() { state = 200, type = 100 }.ToJson(); await _webSocketHandler.SendMessageAsync(socket, Json); await Task.Delay(1000); await connectionManager.CloseSocket(socket); return; } var websocketItem = connectionManager.GetSocketByModel(UserId); if (websocketItem != null) { var Json = new WebSocketUpdateResponse <string>() { state = 200, type = websocketItem.token != token ? 500 : 100 }.ToJson(); await _webSocketHandler.SendMessageAsync(websocketItem.socket, Json); await Task.Delay(1000); await connectionManager.RemoveSocket(UserId); } var ipaddress = context.Connection.RemoteIpAddress.ToIPv4String(); var userAgent = context.Request.Headers["User-Agent"]; var agent = new UserAgent(userAgent); var Browser = $"{agent.Browser?.Name} {agent.Browser?.Version}"; var OS = $"{agent.OS?.Name} {agent.OS?.Version}"; var webSocket = new WebSocketModel() { connectstate = true, connectTime = DateTime.Now, Guid = UserId, socket = socket, userName = userName, Browser = Browser, ip = ipaddress, OS = OS, token = token }; _webSocketHandler.OnConnectedAsync(webSocket); await Receive(socket, async (result, buffer) => { if (result.MessageType == WebSocketMessageType.Text) { await _webSocketHandler.ReceiveAsync(token, socket, result, buffer); return; } else if (result.MessageType == WebSocketMessageType.Close) { await _webSocketHandler.OnDisconnected(socket); return; } }); }