Пример #1
0
        public AccountServiceTests()
        {
            _loginRequest = new AuthenticateRequest
            {
                Password   = "******",
                RememberMe = false,
                Username   = "******"
            };

            _user = new EmbyStatUser
            {
                UserName = _loginRequest.Username
            };

            _appSettings = new AppSettings
            {
                Jwt = new Jwt
                {
                    Key                 = "sdflksjdflsjdf",
                    Audience            = "EmbyStat",
                    Issuer              = "EmbyStat",
                    AccessExpireMinutes = 120
                }
            };
        }
Пример #2
0
        public async Task Register(AuthenticateRequest login)
        {
            var user = new EmbyStatUser
            {
                UserName = login.Username,
                Roles    = new List <string> {
                    Constants.JwtClaims.Admin, Constants.JwtClaims.User
                },
                Email          = new EmailInfo(),
                EmailConfirmed = false
            };

            await _userManager.CreateAsync(user, login.Password);
        }
        public static string GenerateAccessToken(EmbyStatUser user, Jwt jwt, JwtSecurityTokenHandler tokenHandler)
        {
            var identity = GenerateClaimsIdentity(user);

            var claims = new List <Claim>
            {
                new Claim(JwtRegisteredClaimNames.Sub, user.UserName),
                new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()),
                new Claim(JwtRegisteredClaimNames.Iat, ToUnixEpochDate(jwt.IssuedAt).ToString(), ClaimValueTypes.Integer64)
            };

            claims.AddRange(identity.Claims);

            var token = GenerateToken(claims, jwt);

            return(tokenHandler.WriteToken(token));
        }