IP Library Granted Patent US 11,277,410
Granted Patent B2
US 11,277,410 · App. 16/836,535 · Granted Mar 15, 2022

Systems and methods for integrating systems over untrusted networks

Inventors: Carl Christian Rolf (Sydney, AU); Oliver Burn (Sydney, AU); James Navin (Sydney, AU); Rafal Krzysztof Myslek (Sydney, AU)
Assignees: ATLASSIAN PTY LTD.; ATLASSIAN INC.
H04L63/0884G06F9/541H04L63/083H04L63/102
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 11,277,410
App. No.
16/836,535
Granted
Mar 15, 2022
Kind
B2
Abstract

Described herein is a computer implemented method for configuring a receiving system to receive data from a sending system. The method comprises receiving an integration creation request from a client application. In response, a specific integration user account is created with credentials which provide access to the receiving system. The credentials are communicated to the client application. In addition, an integration record comprising details in respect of the integration is created, stored, and associated with the specific integration user account.

Claims (51)

1. A computer implemented method for configuring a first server system to receive data from a second server system across an open unsecured network, the first server system providing server-side functionality for a first client-side application executed at a client device and the second server system providing server-side functionality for a second client-side application executed at the client device, the method comprising:

receiving, at the first server system, an integration creation request from the first client-side application, the integration creation request being made via a first server system user account and being a request to create an integration between the first server system and the second server system;

creating, by the first server system, a integration-specific user account and integration-specific user account credentials which provide access to the first server system;

communicating, by the first server system, the integration-specific user account credentials to the first client-side application;

creating, by the first server system, an integration record comprising details in respect of the integration being created, the integration record being associated with the integration-specific user account; and

storing, at the first server system, the integration record; wherein:

the integration-specific user account is associated with one or more data types, each data type defining a type of data that the second server system will be able to send to the first server system and providing access to one or more specific APIs provided by the first server system for sending the type of data;

the one or more data types are associated with the integration record;

the one or more data types include a build data type; and

the integration-specific user account credentials comprise a set of scopes that provide access to a proxy API server of the first server system.

2. The computer implemented method according to claim 1 , wherein prior to creating the integration-specific user account the method further comprises:

determining, by the first server system, a tenant associated with the first server system user account;

accessing a general integrations user account associated with the tenant; and

creating the integration-specific user account using the general integrations user account.

3. The computer implemented method according to claim 2 , wherein accessing the general integrations user account associated with the tenant comprises:

determining whether a general integrations user account associated with the tenant exists, and:

in response to determining that a general integrations user account associated with the tenant does not exist, creating a new general integrations user account for the tenant.

4. The computer implemented method according to claim 3 , wherein on creating the new general integrations user account for the tenant, a password for the general integrations user account is discarded.

5. The computer implemented method according to claim 1 , wherein the one or more data types include a deployment data type.

6. The computer implemented method according to claim 1 , wherein:

a user directory component of the first server system is used to create and store details of the integration-specific user account; and

the integration record is stored at a data store component of the first server system that is separate to the user directory component.

7. The computer implemented method according to claim 1 , wherein communicating the integration-specific user account credentials to the first client-side application causes the first client-side application to make the integration-specific user account credentials available to the second server system.

8. The computer implemented method according to claim 1 , wherein the integration-specific user account credentials are OAuth credentials having a set of scopes that provides access to a proxy API server of the first server system.

9. A computer processing system comprising:

a processing unit;

a communication interface; and

a non-transient computer-readable storage medium storing sequences of instructions, which when executed by the processing unit, cause the processing unit to:

receive, via the communication interface, an integration creation request from a first client-side application, the integration creation request being made via a first server system user account and being a request to create an integration between the first server system and a second server system across an unsecured network, the first server system providing server-side functionality for the first client-side application and the second server system providing server-side functionality for a second client-side application by the processing unit;

create a integration-specific user account, the integration-specific user account including integration-specific user account credentials which provide access to the first server system;

communicate the integration-specific user account credentials to the first client-side application;

create, by the first server system, an integration record comprising details in respect of the integration being created, the integration record being associated with the integration-specific user account; and

store the integration record wherein:

the integration-specific user account is associated with one or more data types, each data type defining a type of data that the second server system will be able to send to the first server system and providing access to one or more specific APIs provided by the first server system for sending the type of data;

the one or more data types are associated with the integration record;

the one or more data types include a build data type; and

the integration-specific user account credentials comprise a set of scopes that provide access to a proxy API server of the first server system.

10. The computer processing system according to claim 9 , wherein prior creating the integration-specific user account the sequences of instructions, when executed, cause the processing unit to:

determine a tenant associated with the first server system user account;

access a general integrations user account associated with the tenant; and

create the integration-specific user account using the general integrations user account.

11. The computer processing system according to claim 10 , wherein accessing the general integrations user account associated with the tenant comprises:

determining whether the general integrations user account associated with the tenant exists, and:

in response to determining that the general integrations user account associated with the tenant does not exist, creating a new general integrations user account for the tenant.

12. The computer processing system according to claim 11 , wherein on creating the new general integrations user account for the tenant, a password for the general integrations user account is discarded.

13. The computer processing system according to claim 9 , wherein the one or more data types include a deployment data type.

14. The computer processing system according to claim 9 , wherein:

a user directory component of the first server system is used to create and store details of the integration-specific user account; and

the integration record is stored at a data store component of the first server system that is separate to the user directory component.

15. The computer processing system according to claim 9 , wherein communicating the integration-specific user account credentials to the first client-side application causes the first client-side application to make the integration-specific user account credentials available to the second server system.

16. The computer processing system according to claim 9 , wherein the integration-specific user account credentials are OAuth credentials having a set of scopes that provides access to a proxy API server of the first server system.

Assignments (2)
CHANGE OF NAME Recorded Aug 5, 2022
From: ATLASSIAN, INC.
To: ATLASSIAN US, INC.
Reel/Frame 061085/0690 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 11, 2020
From: ROLF, CARL CHRISTIAN; BURN, OLIVER; NAVIN, JAMES; MYSLEK, RAFAL KRZYSZTOF
To: ATLASSIAN PTY LTD.; ATLASSIAN INC.
Reel/Frame 052906/0241 →
Continuity (1)
Related Publication 20210306333A1 · Sep 30, 2021