# US 8,474,019 B2 · Securing asynchronous client server transactions

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,474,019 B2
- Document ID: US8474019B2
- Status: Granted
- Kind: B2
- Application number: 13/413,641
- Filed: 2012-03-06
- Published: 2012-09-13
- Granted: 2013-06-25
- Earliest claimed: 2009-12-15
- Assignees: International Business Machines Corporation
- Applicants: Steven A Bade; Harold Moss; Mary Ellen Zurko
- Inventors: Steven A Bade; Harold Moss; Mary Ellen Zurko
- Web page: https://patentgrep.com/patent/US8474019B2

## CPC

- H04L 63/101: {Access control lists [ACL]}
- G06F 21/10: Protecting distributed programs or content, e.g. vending or licensing of copyrighted material (protection in video systems or pay television H04N7/16) {; Digital rights management [DRM]}
- H04L 63/12: {Applying verification of the received information (cryptographic mechanisms or cryptographic arrangements for data integrity or data verification H04L9/32)}
- H04L 63/1466: {Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks}
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04W 12/06: Authentication
- G06F 21/30: Authentication, i.e. establishing the identity or authorisation of security principals
- H04L 9/32: including means for verifying the identity or authority of a user of the system {or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials}
- H04L 63/10: {for controlling access to devices or network resources}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

A method for securing asynchronous client server transactions is provided in the illustrative embodiments. A request including an application identifier and a version of a second application is received at a first application. A service identifier is generated if a session with the second application is valid. A registry is generated at the first application. A catalog is generated based on the registry and the service identifier and the catalog are sent to the second application. A sub-request including the service identifier is received as part of an asynchronous client server transaction. Validity of the sub-request is determined by determining whether the service identifier has expired, whether the sub-request requests a service that is permissible according to the catalog, whether the service identifier is used in conjunction with the second application, or a combination thereof. If the sub-request is valid, the service is provided.

## Claims

### Claim 1

A computer implemented method for securing asynchronous client server transactions, the computer implemented method comprising:
receiving a request at a first application executing in a data processing system, the request including an application identifier and a version associated with a second application;
generating a service identifier responsive to a session with the second application being valid;
generating a registry at the first application, the registry including information about a set of services and data that the second application is permitted to use;
generating a catalog based on the registry, the catalog including a transformed subset of the registry;
sending the service identifier and the catalog to the second application;
receiving a sub-request, the sub-request being a part of an asynchronous client server transaction, the sub-request including the service identifier;
determining a validity of the sub-request by determining a combination of (i) whether the service identifier has expired, (ii) whether the sub-request requests a service that is permissible according to the catalog, and (iii) whether the service identifier is used in conjunction with the second application;
providing, responsive to the sub-request being valid, the service in response to the sub-request.

### Claim 2 (depends on 1)

The computer implemented method of claim 1, wherein the determining the validity further uses in the combination (iv) determining whether the catalog is outdated.

### Claim 3 (depends on 1)

The computer implemented method of claim 1 wherein the determination whether the service identifier is used in conjunction with the second application comprises determining whether the service identifier is used together with the application identifier and the application version of the second application.

### Claim 4 (depends on 1)

The computer implemented method of claim 1, further comprising:
providing, responsive to the sub-request being invalid, one of (i) a renewed service identifier, and (ii) a renewed catalog.

### Claim 5 (depends on 4)

The computer implemented method of claim 4, wherein the renewed service identifier is one of (i) a new service identifier, (ii) the service identifier including a modified security feature, and (iii) the service identifier corresponding to a modification of the security feature validation criterion at the first application, and wherein the providing occurs before the asynchronous client server transaction is concluded.

### Claim 6 (depends on 4)

The computer implemented method of claim 4, wherein the renewed catalog is one of (i) a new catalog, (ii) an update to the catalog, and (iii) a modification to an expiration parameter of the catalog, and wherein the providing occurs before the asynchronous client server transaction is concluded.

### Claim 7 (depends on 1)

The computer implemented method of claim 1, further comprising:
determining whether the service requires additional authentication, forming a determination of additional authentication;
receiving additional authentication information responsive to the determination of additional authentication being true; and
determining whether the additional authentication information is valid, wherein the service is provided responsive to the additional authentication information being valid.

### Claim 8 (depends on 1)

The computer implemented method of claim 1, wherein the determination whether the service is permissible according to the catalog by determining whether the service is permissible using the registry.

### Claim 9 (depends on 1)

The computer implemented method of claim 1, further comprising:
generating an original service identifier, wherein the service identifier is a transformed version of the original service identifier.

### Claim 10

A computer implemented method for securing asynchronous client server transactions, the computer implemented method comprising:
receiving, from a first application, at a second application executing in a data processing system, a service identifier and a catalog responsive to sending an application identifier and an application version associated with the second application, the catalog including a transformed subset of a registry associated with the first application;
dynamically constructing a sub-request, the sub-request being a part of an asynchronous client server transaction, the sub-request including the service identifier, and the sub-request further including a request for a service from the catalog, wherein a validity of the sub-request is determinable by determining a combination of (i) whether the service identifier has expired, (ii) whether the sub-request requests a service that is permissible according to the catalog, and (iii) whether the service identifier is used in conjunction with the second application;
receiving, responsive to the sub-request being valid according to the first application, data associated with the service.

### Claim 11 (depends on 10)

The computer implemented method of claim 10, wherein the sub-request further includes the application identifier and the application version associated with the second application.

### Claim 12 (depends on 10)

The computer implemented method of claim 10, further comprising:
receiving, responsive to the sub-request being invalid, one of (i) a renewed service identifier, and (ii) a renewed catalog, wherein the sub-request is invalid due to a determination that one of (i) the service identifier is invalid, (ii) the service is not within the catalog, and (iii) the catalog is outdated; and
dynamically constructing a second sub-request using one of (i) the renewed service identifier, and (ii) the renewed catalog.
