IP Library › Granted Patent US 10,924,377
Granted Patent B2
US 10,924,377 · App. 16/128,424 · Granted Feb 16, 2021

Systems and methods for application scripts for cross-domain applications

Inventor: Abhishek Chauhan (Santa Clara, CA)
Assignee: Citrix Systems, Inc.
H04L43/14H04L47/70H04L63/08H04L67/02H04L67/141H04L67/42
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,924,377
App. No.
16/128,424
Filed
Sep 11, 2018
Granted
Feb 16, 2021
Kind
B2
Art Unit
2453
USPC
709/203
Abstract

Embodiments described include systems and methods for executing in an embedded browser an application script for network applications of different origins. A client application can establish a first session with a first network application of a first entity at a first origin via an embedded browser within the client application and a second session with a second network application of a second entity at a second origin via the embedded browser within the client application. A scripting engine within the client application of a client device of a user at a third origin can identify an application script having instructions to interact with the first network application and the second network application, and can execute the instructions to perform a task across the first network application of the first entity at the first origin and the second network application of the second entity at the second origin.

Claims (32)

1. A method for executing in an embedded browser an application script for network applications of different origins, the method comprising:

(a) establishing, by a client application, a first one or more sessions with a first one or more network applications of a first entity at a first origin via an embedded browser within the client application;

(b) establishing, by the client application, a second one or more sessions with a second one or more network applications of a second entity at a second origin via the embedded browser within the client application;

(c) identifying, by a scripting engine within the client application of a client device of a user at a third origin, an application script comprising instructions to interact with each the first one or more networks applications of the first entity at the first origin and the second one or more network applications of the second entity at the second origin; and

(d) executing, by the scripting engine, the instructions of the application script to perform a first portion of a task using a first network application of the first one or more networks applications of the first entity at the first origin and to perform a second portion of the task using a second network application of the second one or more network applications of the second entity at the second origin.

2. The method of claim 1 , wherein the first one or more network applications comprises a suite of applications originating from or hosted by a first one or more servers at the first origin.

3. The method of claim 1 , wherein the second one or more network applications comprises a suite of applications originating from or hosted by a second one or more servers at the second origin.

4. The method of claim 1 , wherein the first origin and the second origin are different origins that fail a same origin policy.

5. The method of claim 1 , further comprising establishing, by the client application, a domain of trust between the first one or more networks applications of the first entity at the first origin and the second one or more network applications of the second entity at the second origin.

6. The method of claim 5 , wherein the domain of trust is established responsive to authentication of the same user for the first one or more network applications and the second one or more network applications via the client application on the client device of a third entity of the user corresponding to the third origin.

7. The method of claim 1 , further comprising initiating execution of the application script by one of the first one or more network applications or the second one or more network applications.

8. The method of claim 1 , wherein (d) further comprising allowing, by the client application responsive to a policy, the application script to interact across the first origin and the second origin.

9. The method of claim 8 , wherein the policy specifies that the first origin and the second origin are trusted origins to interact across via the embedded browser of the client application.

10. A method for collaborating across network applications of different origins in an embedded browser, the method comprising:

(a) establishing, by a client application, a first one or more sessions with a first one or more network applications of first entity at a first origin via an embedded browser within the client application;

(b) establishing, by the client application, a second one or more sessions with a second one or more network applications of a second entity at a second origin via the embedded browser within the client application;

(c) determining, by the client application responsive to a policy, that the first origin and the second origin are origins to be trusted to interact across via the embedded browser; and

(d) allowing, by the client application responsive to the determination, a first network application of the first one or more networks applications of the first entity at the first origin to interact via the embedded browser with a second network application of the second one or more network applications of the second entity at the second origin for the first network application to perform a first portion of a task and the second network application to perform a second portion of the task.

11. The method of claim 10 , wherein the first origin and the second origin fail a same origin policy.

12. The method of claim 10 , wherein the policies specifies a plurality of different origins to trust, the plurality of different origins comprising the first origin and the second origin.

13. The method of claim 10 , further comprising executing, by a scripting engine of the client application, a script to interact via the embedded browser between the first one or more networks applications of the first entity at the first origin and the second one or more network applications of the second entity at the second origin.

14. The method of claim 10 , wherein (d) further comprises allowing interacting responsive to authentication of the same user to each of the first one or more networks applications and the second one or more network applications.

15. A system for collaborating across network applications of different origins in an embedded browser, the system comprising:

a client application executable on one or more processors of a client device and configured to:

establish a first one or more sessions with a first one or more network applications of first entity at a first origin via an embedded browser within the client application and a second one or more sessions with a second one or more network applications of a second entity at a second origin via the embedded browser within the client application;

determine, responsive to a policy, that the first origin and the second origin are origins to be trusted to interact across via the embedded browser; and

allow, responsive to the determination, a first network application of the first one or more networks applications of the first entity at the first origin to interact via the embedded browser with a second network application of the second one or more network applications of the second entity at the second origin for the first network application to perform a first portion of a task and the second network application to perform a second portion of the task.

16. The system of claim 15 , wherein the first origin and the second origin are different origins that fail a same origin policy.

17. The system of claim 15 , wherein the policy specifies a plurality of different origins to trust, the plurality of different origins comprising the first origin and the second origin.

18. The system of claim 15 , further comprising a scripting engine configured to execute instructions of a script to perform via the embedded browser a task across the first one or more networks applications of the first entity at the first origin and the second one or more network applications of the second entity at the second origin.

19. The system of claim 15 , wherein the first one or more network applications comprises a suite of applications originating from or hosted by a first one or more servers at the first origin.

20. The system of claim 15 , wherein the client application is configured to allow the interaction responsive to authentication of the same user to each of the first one or more networks applications and the second one or more network applications.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2019
From: CHAUHAN, ABHISHEK
To: CITRIX SYSTEMS, INC.
Reel/Frame 048600/0125 →
Continuity (1)
Related Publication 20200084132A1 · Mar 12, 2020
Cited By (6)
US 12,238,101 US 12,355,803 US 12,375,496 US 12,587,569 US 12,659,291 US 12,701,123