Client device information for controlling access to web applications

US11216551B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11216551-B2
Application numberUS-201715708257-A
CountryUS
Kind codeB2
Filing dateSep 19, 2017
Priority dateSep 19, 2016
Publication dateJan 4, 2022
Grant dateJan 4, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The described technology provides for plural application processes including at least one application in a browser to reliably acquire device information that can be used by other processes to accurately determine whether the plural applications are running on the same client device and/or are associated with aspects of the same client device. The more reliable determination of the devices associated with respective application processes can be used for various purposes such as, for example, user access management capabilities such as improved single sign-on (SSO) capability and/or improved multiple login prevention (MLP) capability.

First claim

Opening claim text (preview).

The invention claimed is: 1. A system comprising: a client device comprising a first processing system having at least one processor, wherein the first processing system is configured to perform operations comprising: executing, on the client device, a first client application within a web browser, the first client application providing a first client-side portion of a web application; executing, on the client device, a second client application providing a second client-side portion of the web application; and executing, on the client device, a service application configured to determine at least one piece of client identifying information of the client device and to provide the determined at least one piece of client identifying information to the first client application and to the second client application in response to respective requests, wherein the first client application and the second client application obtain the determined at least one piece of client identifying information from the service application, wherein the first client application transmits a first request with the obtained at least one piece of client identifying information, and wherein the second client application transmits a second request with the obtained at least one piece of client identifying information; and at least one server device comprising a second processing system having at least one processor, wherein the second processing system is configured to execute a server-side process of the web application and to perform operations comprising: transmitting configuration information to the client device; receiving the first request from the first client application and the second request from the second client application, the first request including a first client identifying information and the second request including second client identifying information; determining whether the second client identifying information corresponds to the first client identifying information; and performing a first action which includes enabling the first and second client applications to share a login session if the determining determines that the second client identifying information corresponds to the first client identifying information, and performing a second action which includes disabling a login session for at least one of the first and second client applications if the determining determines that the second client identifying information does not correspond to the first client identifying information, wherein the first processing system is further configured to perform operations comprising: receiving the configuration information; and configuring the service application in accordance with the configuration information, wherein the second processing system is further configured to: in response to the first request, return a session identifier to the first client application; and in response to the second request, (A) provide the session identifier to the second client application if the determining determines that the second client identifying information corresponds to the first client identifying information, or (B) not provide the session identifier to the second client application if the determining determines that the second client identifying information does not correspond to the first client identifying information. 2. The system according to claim 1 , wherein the second processing system is further configured to provide for disabling a session represented by the session identifier if the determining determines that the second client identifying information does not correspond to the first client identifying information. 3. The system according to claim 1 , wherein the determined at least one piece of client identifying information comprises information unique to the first processing system. 4. The system according to claim 3 , wherein the service application obtains the information unique to the first processing system from an operating system of the first processing system, and wherein at least one of the first client application or the second client application has insufficient access privileges to obtain the information unique to the first processing system directly from the operating system. 5. The system according to claim 1 , wherein the determined at least one piece of identifying information is at least partly based upon a unique identifier of a hardware element or a software element in the first processing system. 6. The system according to claim 1 , wherein the determined at least one piece of client identifying information is at least partly based upon a unique identifier associated with a software element in the first processing system. 7. The system according to claim 1 , wherein the service application executes with a privilege level different from privilege levels of at least one of the first client application or the second client application. 8. The system according to claim 1 , wherein the service application is a HTTP server process, and wherein communication between the service application and the first client application is based upon HTTP and JSON. 9. The system according to claim 8 , wherein, upon startup, the service application automatically binds to a first available port by sequentially searching from a predetermined port. 10. The system according to claim 8 , wherein the communication includes a HTTP query which includes a request portion having included therein a timestamp. 11. The system according to claim 10 , wherein the first client application is further configured to, upon receiving a response to the HTTP query, compare a timestamp returned with the response against a current time and accept the response only if the time difference between the returned timestamp and the current time is less than a predetermined interval. 12. The system according to claim 10 , wherein a request parameter of the HTTP query is encrypted, and a command identifier in the HTTP query is not encrypted. 13. The system according to claim 1 , wherein the first processing system is further configured to periodically receive configuration information from the server device, wherein the service application is further configured to provide, in response to the respective requests, the configuration information to the first and second applications in association with the first and second client identifying information. 14. A method performed in a client device by a first processing system having at least one processor, the method comprising: running (A) a first client application within a web browser, the first client application providing a first client-side portion of a web application, (B) a second client application providing a second client-side portion of the web application, and (C) a service application configured to determine at least one piece of client identifying information of the client device and to provide the determined at least one piece of client identifying information to the first client application and to the second client application in response to respective requests, wherein the first client application, the second client application and the service application run on the client device; receiving configuration information from a server-side process of the web application, wherein the service application is configured in accordance with the received configuration information; obtaining, by the first client application and the second client application, the determined at least one piece of client identifying information from the service application; transmitting to the server-side process of the web applicatio

Assignees

Inventors

Classifications

  • Setup of application sessions (admission control or resource allocation in data switching networks H04L47/70) · CPC title

  • Multiple levels of security · CPC title

  • G06F21/44Primary

    Program or device authentication · CPC title

  • Migration or transfer of sessions · CPC title

  • based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11216551B2 cover?
The described technology provides for plural application processes including at least one application in a browser to reliably acquire device information that can be used by other processes to accurately determine whether the plural applications are running on the same client device and/or are associated with aspects of the same client device. The more reliable determination of the devices asso…
Who is the assignee on this patent?
Nasdaq Inc
What technology area does this patent fall under?
Primary CPC classification G06F21/44. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 04 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).