IP Library Granted Patent US 12693888
Granted Patent B2
US 12693888 · App. 17/536,494 · Granted Jul 28, 2026

Managing data access by communication protocols in continuous integration environments

Inventors: Arie Bregman (Gan Yavne, IL); Avraham Talmor (Rishon Letzion, IL); Ilan Gersht (Bat Yam, IL)
Assignee: Red Hat, Inc.
G06F9/468G06F8/62G06F9/4843
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 12693888
App. No.
17/536,494
Granted
Jul 28, 2026
Kind
B2
Abstract

The technology disclosed herein enables managing data access by communication protocols in continuous integration environments. An example method comprises scheduling, by a processor, a software build job to execute on a computing node of a computer system; identifying a first list specifying a first set of access privileges by the software job to a first set of communication protocols, wherein the first list is exclusively associated with the software build job; identifying a second list comprising a second set of access privileges to a second set of communication protocols, wherein the second list is specific to the computer system; and responsive to determining that the access privileges of the first list do not conflict with the access privileges of the second list, causing a filtering agent operating on the computing node to enforce the access privileges of the first list and the access privileges of the second list.

Claims (37)

1 . A method comprising:

scheduling, by a processing device, a software build job to execute on a computing node of a computer system;

identifying a first list specifying a first set of access privileges by the software build job to a first set of communication protocols, wherein the first list is exclusively associated with the software build job;

identifying a second list comprising a second set of access privileges to a second set of communication protocols, wherein the second list is specific to the computer system;

responsive to determining that the access privileges of the first list do not conflict with the access privileges of the second list, causing, by the processing device, a filtering agent operating on the computing node to enforce the access privileges of the first list and the access privileges of the second list; and

uninstalling the filtering agent from the computing node upon completion of the software build job, wherein the access privileges of the first list and the second list are updated based on the uninstalling the filtering agent and prevent a conflict between a subsequent build job and the access privileges of the first list and the second list.

2 . The method of claim 1 , further comprising:

responsive to determining that the access privileges of the first list conflict with the access privileges of the second list, generating a third list based on a priority of at least one of the first list or the second list.

3 . The method of claim 1 , wherein the first list is identified using at least one of a regular expression, an identifier, or an attribute associated with the software build job.

4 . The method of claim 1 , wherein the first list specifies one or more communication protocols the software build job is prohibited from using.

5 . The method of claim 1 , wherein the first list comprises one or more communication protocols the software build job is allowed to use.

6 . The method of claim 1 , wherein the communication protocol comprises at least one of an Internet Protocol (IP), a Transmission Control Protocol (TCP), a User Datagram Protocol (UDP), a Hypertext Transfer Protocol (HTTP), a File Transfer Protocol (FTP), or a Secure Shell (SSH).

7 . A system comprising:

a memory;

a processing device operatively coupled to the memory, the processing device configured to:

schedule, by the processing device, a software build job to execute on a computing node of a computer system;

identify a first list specifying a first set of access privileges by the software build job to a first set of communication protocols, wherein the first list is exclusively associated with the software build job;

identify a second list comprising a second set of access privileges to a second set of communication protocols, wherein the second list is specific to the computer system;

responsive to determining that the access privileges of the first list do not conflict with the access privileges of the second list, cause, by the processing device, a filtering agent operating on the computing node to enforce the access privileges of the first list and the access privileges of the second list; and

uninstall the filtering agent from the computing node upon completion of the software build job, wherein the access privileges of the first list and the second list are updated based on the uninstall the filtering agent and prevent a conflict between a subsequent build job and the access privileges of the first list and the second list.

8 . The system of claim 7 , wherein the processing device is further configured to:

responsive to determining that the access privileges of the first list conflict with the access privileges of the second list, generate a third list based on a priority of at least one of the first list or the second list.

9 . The system of claim 7 , wherein the first list is identified using at least one of a regular expression, an identifier, or an attribute associated with the software build job.

10 . The system of claim 7 , wherein the first list specifies one or more communication protocols the software build job is prohibited from using.

11 . The system of claim 7 , wherein the first list comprises one or more communication protocols the software build job is allowed to use.

12 . The system of claim 7 , wherein the communication protocol comprises at least one of an Internet Protocol (IP), a Transmission Control Protocol (TCP), a User Datagram Protocol (UDP), a Hypertext Transfer Protocol (HTTP), a File Transfer Protocol (FTP), or a Secure Shell (SSH).

13 . A non-transitory machine-readable storage medium storing executable instructions that, when executed by a processing device, cause the processing device to:

schedule, by the processing device, a software build job to execute on a computing node of a computer system;

identify a first list specifying a first set of access privileges by the software build job to a first set of communication protocols, wherein the first list is exclusively associated with the software build job;

identify a second list comprising a second set of access privileges to a second set of communication protocols, wherein the second list is specific to the computer system;

responsive to determining that the access privileges of the first list do not conflict with the access privileges of the second list, cause a filtering agent operating on the computing node to enforce the access privileges of the first list and the access privileges of the second list; and

uninstall the filtering agent from the computing node upon completion of the software build job, wherein the access privileges of the first list and the second list are updated based on the uninstall the filtering agent and prevent a conflict between a subsequent build job and the access privileges of the first list and the second list.

14 . The non-transitory machine-readable storage medium of claim 13 , further comprising executable instructions that, when executed by the processing device, cause the processing device to:

responsive to determining that the access privileges of the first list conflict with the access privileges of the second list, generate a third list based on a priority of at least one of the first list or the second list.

15 . The non-transitory machine-readable storage medium of claim 13 , wherein the first list is identified using at least one of a regular expression, an identifier, or an attribute associated with the software build job.

16 . The non-transitory machine-readable storage medium of claim 13 , wherein the first list specifies one or more communication protocols the software build job is prohibited from using.

17 . The non-transitory machine-readable storage medium of claim 13 , wherein the first list comprises one or more communication protocols the software build job is allowed to use.