Пример #1
0
        public bool ValidateToken(string Token)
        {
            if (Token == null)
            {
                return(false);
            }
            else
            {
                using (DAL.AuthenticateDAL objMem = new DAL.AuthenticateDAL())
                {
                    var nTokenRecord = objMem.GetToken(Token);

                    if (nTokenRecord != null)
                    {
                        DateTime currentTimeUTC;
                        currentTimeUTC = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now, TimeZoneInfo.Local);
                        var span = currentTimeUTC - nTokenRecord.ExpiryDate.ToUniversalTime();
                        if (span.TotalSeconds > 0)
                        {
                            return(false);
                        }
                        else
                        {
                            nTokenRecord.ExpiryDate = DateTime.Now.Add(new TimeSpan(0, 0, DefaultSecondsUntilTokenExpires));
                            return(objMem.UpdateToken(nTokenRecord));
                        }
                    }
                    else
                    {
                        return(false);
                    }
                }
            }
        }
Пример #2
0
        public DataContracts.TokenContract GenerateToken(string User)
        {
            Guid           UserId;
            MembershipUser memuser;

            memuser = Membership.GetUser(User);
            Guid.TryParse(memuser.ProviderUserKey.ToString(), out UserId);
            var Token = BuildSecureToken(TokenSize);

            using (DAL.AuthenticateDAL objMem = new DAL.AuthenticateDAL())
            {
                var nTokenRecord = new DataContracts.TokenContract()
                {
                    UserID     = UserId.ToString(),
                    UserName   = memuser.UserName,
                    Token      = Token,
                    ExpiryDate = DateTime.Now.Add(new TimeSpan(0, 0, DefaultSecondsUntilTokenExpires))
                };

                if (!objMem.SaveToken(nTokenRecord))
                {
                    throw new WebFaultException <string>("Token Generation Failed.", System.Net.HttpStatusCode.InternalServerError);
                }
                memuser = null;
                return(nTokenRecord);
            }
        }