Exemple #1
0
        public static Models.Member.TokenModel GenerateToken(Models.Member.MemberModel member)
        {
            var claims = new List <Claim>();

            // create required claims
            claims.Add(new Claim(ClaimTypes.NameIdentifier, member.Id.ToString()));
            claims.Add(new Claim(ClaimTypes.Name, member.FirstName));

            // custom – my serialized AppUserState object
            //claims.Add(new Claim("userState", member.ToString()));

            var identity = new ClaimsIdentity(claims, AppConfigs.OAuthAuthenticationType);

            DateTime issuredDate = DateTime.UtcNow;
            DateTime expiresDate = issuredDate.Add(TimeSpan.FromHours(AppConfigs.OAuthTimespanHour));

            AuthenticationTicket ticket = new AuthenticationTicket(identity, new AuthenticationProperties());

            ticket.Properties.IssuedUtc  = DateTime.SpecifyKind(issuredDate, DateTimeKind.Utc);
            ticket.Properties.ExpiresUtc = DateTime.SpecifyKind(expiresDate, DateTimeKind.Utc);

            string AccessToken = Startup.OAuthBearerOptions.AccessTokenFormat.Protect(ticket);

            return(new Models.Member.TokenModel
            {
                MemberId = member.Id,
                Token = AccessToken,
                IssuedUtc = issuredDate,
                ExpiresUtc = expiresDate
            });
        }
Exemple #2
0
        private void IdentitySignin(Models.Member.MemberModel member, bool isPersistent = false)
        {
            var claims = new List <Claim>();

            // create required claims
            claims.Add(new Claim(ClaimTypes.NameIdentifier, member.Id.ToString()));
            claims.Add(new Claim(ClaimTypes.Name, member.FirstName));

            // custom – my serialized AppUserState object
            //claims.Add(new Claim("userState", member.ToString()));

            var identity = new ClaimsIdentity(claims, AppConfigs.OAuthAuthenticationType);

            AuthenticationManager.SignIn(new AuthenticationProperties()
            {
                AllowRefresh = true,
                IsPersistent = isPersistent,
                ExpiresUtc   = DateTime.UtcNow.AddDays(7)
            }, identity);
        }