Facilitating single sign-on to software applications
US-2015326562-A1 · Nov 12, 2015 · US
US11775629B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11775629-B2 |
| Application number | US-202117560746-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 23, 2021 |
| Priority date | Sep 19, 2016 |
| Publication date | Oct 3, 2023 |
| Grant date | Oct 3, 2023 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
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.
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, (1) a first client application within a web browser, the first client application providing a first client-side portion of a web application; (2) a second client application providing a second client-side portion of the web application; and (3) a service application at a privilege level different from a privilege level of the first client application or the second client application, the service application being configured to determine at least one piece of client identifying information that uniquely identifies the first processing system and to provide the determined at least one piece of client identifying information to the first client application and to the second client application, 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, wherein the second client application transmits a second request with the obtained at least one piece of client identifying information, and wherein the service application comprises HTTP server functionality, and communication between the service application and the first client application is based upon HTTP and JSON; 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: 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. 2. The system according to claim 1 , wherein the second processing system is further configured to provide for disabling a session represented by a session identifier provided by the first client application or the second client application 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 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. 4. 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. 5. 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. 6. The system according to claim 1 , wherein, upon startup, the service application automatically binds to a first available port by sequentially searching from a predetermined port. 7. The system according to claim 1 , wherein the communication includes a HTTP query which includes a request portion having included therein a timestamp. 8. The system according to claim 7 , 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. 9. The system according to claim 7 , wherein a request parameter of the HTTP query is encrypted, and a command identifier in the HTTP query is not encrypted. 10. A method performed in a client device by a first processing system having at least one processor, the method comprising: running on the client device (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 at a privilege level different from a privilege level of the first client application or the second client application, the service application being configured to determine at least one piece of client identifying information that uniquely identifies the first processing system and to provide the determined at least one piece of client identifying information to the first client application and to the second client application, wherein the first client application, the second client application and the service application run on the client device, and wherein the service application comprises HTTP server functionality, and communication between the service application and the first client application is based upon HTTP and JSON; 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 application, by the first client application and the second client application, respective requests including the obtained at least one piece of client identifying information; and responsive to a response received from the server-side process for the second request, determining further processing of at least one of the first client application or the second client application. 11. The method according to claim 10 , wherein the determined at least one piece of client identifying information comprises information unique to the first processing system. 12. The method according to claim 11 , 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. 13. The method according to claim 10 , further comprising: providing, by the second processing system, for disabling, by the second a session represented by a session identifier provided by the first client application or the second client application if the determining determines that the second client identifying information does not correspond to the first client identifying information. 14. The method according to claim 10 , further comprising: obtaining, by the s
Program or device authentication · CPC title
Indexing; Web crawling techniques · CPC title
wherein the data content is protected, e.g. by encrypting or encapsulating the payload · CPC title
Multiple levels of security · CPC title
based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.