public AccessToken GetAccessToken(Guid userKey, UserAgentDetails deviceInfo, string ip) { return(this.Collection.Find(at => at.UserKey == userKey && at.DeviceInfo.Browser == deviceInfo.Browser && at.DeviceInfo.Platform == deviceInfo.Platform && at.Ip == ip && at.DeviceInfo.OperatingSystem == deviceInfo.OperatingSystem).FirstOrDefault()); }
public static AccessToken Map(UserAgentDetails deviceInfo, GetIpInfoResponse ipInfo, string ip, User user) { AccessToken accessToken = new AccessToken { CreateDate = DateTime.UtcNow, DeviceInfo = deviceInfo, IpInfo = ipInfo, Ip = ip, Token = HashUtility.GenerateRandomSha256(), UserKey = user.UserKey }; return(accessToken); }
/// <summary> /// Get details from User Agent like platform, browser and operating system /// </summary> /// <param name="userAgent">full user agent header</param> /// <returns></returns> public static UserAgentDetails GetUserAgentDetails(this string userAgent) { UserAgentDetails userAgentDetails = new UserAgentDetails() { UserAgent = userAgent }; var osDetails = GetOperatingSystem(userAgent); userAgentDetails.OperatingSystem = osDetails[0]; userAgentDetails.OperatingSystemVersion = osDetails[1]; var browserDetails = GetBrowser(userAgent); userAgentDetails.Browser = browserDetails[0]; userAgentDetails.BrowserVersion = browserDetails[1]; userAgentDetails.Platform = GetPlatform(userAgentDetails.OperatingSystem); return(userAgentDetails); }