IP Library Granted Patent US 12,299,472
Granted Patent B2
US 12,299,472 · App. 17/690,632 · Granted May 13, 2025

Executable policy declarations for network security

Inventors: Biju Ramachandra Kaimal (Bangalore, IN); Avni Bhupendrakumar Wala (Bangalore, IN); Nikhil Bhandari (Bangalore, IN)
Assignee: Sophos Limited
G06F9/45558G06F3/0482G06F8/65G06F8/71G06F9/4401G06F9/5077G06F11/1438G06F11/1451G06F21/6209H04L9/3213H04L9/3228H04L9/3247H04L12/66H04L41/082H04L43/0811H04L63/02H04L63/029H04L63/0869H04L63/0876H04L63/20H04L67/141H04L67/146G06F2009/4557G06F2009/45595G06F2209/505
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 12,299,472
App. No.
17/690,632
Granted
May 13, 2025
Kind
B2
Abstract

A policy created through an administrative user interface is converted into an intermediate representation that can be compiled for execution by a gateway or converted into a human-readable form for modifications by the administrator.

Claims (63)

1. A computer program product comprising computer executable code embodied in a non-transitory computer readable medium that, when executing on one or more computing devices, performs the steps of:

receiving a security policy from an administrator for an enterprise network, the security policy including one or more rules for controlling use of resources within the enterprise network by one or more endpoints that provide heartbeats, and the security policy expressed in a human readable markup language;

converting the one or more rules into an intermediate form representing corresponding network usage parameters;

converting the intermediate form into an executable form, the executable form including a compressed file containing one or more policy definition files expressed in a query language for managing resources within the enterprise network by specifying conditions for allowing access to resources by the one or more endpoints;

sending the executable form to a zero trust network access gateway for the enterprise network;

executing the executable form on the zero trust network access gateway to manage user access to an application for the enterprise network, wherein executing the executable form includes:

evaluating the security policy in the executable form with a policy engine that distinguishes between agentless and agent-based policies,

importing a proxy to apply agentless policies to agentless resources accessed by the one or more endpoints,

applying agent-based policies to agent-based resources accessed by the one or more endpoints by importing a server module, and

applying the agent-based policies includes receiving health status updates as heartbeats from the one or more endpoints and comparing the heartbeats from the one or more endpoints to the agent-based policies for access to the agent-based resources;

converting the intermediate form into a human readable form of the one or more rules;

displaying the one or more rules in a user interface by parsing a grammar construct of the intermediate form to generate a representation of the intermediate form for the user interface that is configured to receive modifications from the administrator;

receiving a modification to the one or more rules from the administrator in the user interface, thereby providing a modified security policy;

storing the modified security policy including the one or more rules and the modification; and

converting the modified security policy into a modified intermediate form.

2. The computer program product of claim 1 , wherein the compressed file contains one or more policy definition files characterizing the security policy for the enterprise network.

3. The computer program product of claim 1 , wherein converting the intermediate form into the executable form includes parsing one or more rules based on a grammar construct.

4. The computer program product of claim 3 , wherein the grammar construct includes one or more of a rule type, a rule condition, and a rule value.

5. A method comprising:

receiving a security policy from an administrator, the security policy including one or more rules for controlling use of resources within an enterprise network by one or more endpoints that provide heartbeats, and the security policy expressed in a human readable markup language;

converting the one or more rules into an intermediate form;

converting the intermediate form into an executable form, the executable form including a compressed file containing one or more policy definition files expressed in a query language for managing resources within the enterprise network by specifying conditions for allowing access to resources by the one or more endpoints;

sending the executable form to a gateway; and

executing the executable form on the gateway to manage user access to an application, wherein executing the executable form includes:

evaluating the security policy in the executable form with a policy engine that distinguishes between agentless and agent-based policies,

importing a proxy to apply agentless policies to agentless resources accessed by the one or more endpoints,

applying agent-based policies to agent-based resources accessed by the one or more endpoints by importing a server module, and

applying the agent-based policies includes receiving health status updates as heartbeats from the one or more endpoints and comparing the heartbeats from the one or more endpoints to the agent-based policies for access to the agent-based resources.

6. The method of claim 5 , wherein the gateway is a zero trust network access gateway.

7. The method of claim 5 , wherein the executable form is a changelog.

8. The method of claim 5 , wherein each of the one or more rules includes an assignment of the security policy to one or more resources.

9. The method of claim 5 , wherein the compressed file includes a tar file containing one or more policy definition files that characterize the security policy for an enterprise network.

10. The method of claim 5 , further comprising:

converting the executable form to the intermediate form;

converting the intermediate form into the one or more rules; and

displaying the one or more rules on a user interface by parsing a grammar construct of the intermediate form to generate a representation of the intermediate form for the user interface.

11. The method of claim 5 , wherein converting the intermediate form into the executable form includes parsing one or more rules based on a grammar construct.

12. The method of claim 11 , wherein the grammar construct includes one or more of a rule type, a rule condition, and a rule value.

13. A system comprising:

one or more endpoints in a zero trust network access environment;

a zero trust network access gateway;

a database; and

a threat management facility for an enterprise network, the threat management facility hosted on a cloud computing platform and the threat management facility including a processor and memory storing computer executable instructions that configure the threat management facility to perform the steps of:

receiving a security policy from an administrator console, the security policy including one or more rules for controlling use of resources within the enterprise network by the one or more endpoints that provide heartbeats, and the security policy expressed in a human readable markup language;

converting the one or more rules into an intermediate form;

storing the intermediate form on the database;

converting the intermediate form into an executable form, the executable form including a compressed file containing one or more policy definition files expressed in a query language for managing resources within the enterprise network by specifying conditions for allowing access to resources by the one or more endpoints;

sending the executable form from the database to the gateway; and

executing the executable form on the gateway to manage user access to an application, wherein executing the executable form includes:

evaluating the security policy in the executable form with a policy engine that distinguishes between agentless and agent-based policies,

importing a proxy to apply agentless policies to agentless resources accessed by the one or more endpoints,

applying agent-based policies to agent-based resources accessed by the one or more endpoints by importing a server module, and

applying the agent-based policies includes receiving health status updates as heartbeats from the one or more endpoints and comparing the heartbeats from the one or more endpoints to the agent-based policies for access to the agent-based resources.

14. The system of claim 13 , wherein the compressed file contains one or more policy definition files characterizing the security policy for the enterprise network.

15. The system of claim 13 , wherein the processor is further configured to perform the steps of:

converting the executable form to the intermediate form;

converting the intermediate form into the one or more rules; and

displaying the one or more rules on a user interface at the administrator console by parsing a grammar construct of the intermediate form to generate a representation of the intermediate form for the user interface.

16. The system of claim 13 , wherein converting the intermediate form into the executable form includes parsing one or more rules based on a grammar construct.

17. The system of claim 16 , wherein the grammar construct includes one or more of a rule type, a rule condition, and a rule value.

18. The computer program product of claim 1 , wherein the policy engine includes an Open Policy Agent.

19. The computer program product of claim 1 , wherein the server module includes a WebSocket server.

20. The computer program a product of claim 1 , wherein the proxy includes an Envoy module.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2022
From: KAIMAL, BIJU RAMACHANDRA; WALA, AVNI BHUPENDRAKUMAR; BHANDARI, NIKHIL
To: SOPHOS LIMITED
Reel/Frame 059268/0001 →
Priority Claims (1)
IN 202111047216 · Oct 18, 2021 · national
Continuity (3)
Continuation PCTUS2022018635 · Mar 3, 2022
Provisional Application 63271652 · Oct 25, 2021
Related Publication 20230117962A1 · Apr 20, 2023
References Cited (147)
US 6484261B1 · Wiegel · 2002 [cited by examiner]
US 6769008B1 · Kumar et al. · 2004 [cited by applicant]
US 6801949B1 · Bruck et al. · 2004 [cited by applicant]
US 8181244B2 · Boney · 2012 [cited by applicant]
US 8201243B2 · Boney · 2012 [cited by applicant]
US 8418250B2 · Morris et al. · 2013 [cited by applicant]
US 8719932B2 · Boney · 2014 [cited by applicant]
US 8726389B2 · Morris et al. · 2014 [cited by applicant]
US 8763123B2 · Morris et al. · 2014 [cited by applicant]
US 8856505B2 · Schneider · 2014 [cited by applicant]
US 9306864B2 · Thakkar et al. · 2016 [cited by applicant]
US 9378359B2 · Qureshi et al. · 2016 [cited by applicant]
US 9413721B2 · Morris et al. · 2016 [cited by applicant]
US 9578045B2 · Jaroch et al. · 2017 [cited by applicant]
US 10257224B2 · Jaroch et al. · 2019 [cited by applicant]
US 10348767B1 · Lee et al. · 2019 [cited by applicant]
US 10411894B1 · Yavnilovich et al. · 2019 [cited by applicant]
US 10958662B1 · Sole · 2021 [cited by examiner]
US 11005853B1 · Agarwal et al. · 2021 [cited by applicant]
US 11019166B2 · Brasetvik et al. · 2021 [cited by applicant]
US 11050716B1 · De Hoz Diego · 2021 [cited by applicant]
US 11134058B1 · Sole et al. · 2021 [cited by applicant]
US 11159546B1 · Moore et al. · 2021 [cited by applicant]
US 11218446B2 · Leon · 2022 [cited by applicant]
US 11316842B2 · Bendersky et al. · 2022 [cited by applicant]
US 11356508B1 · Vergara et al. · 2022 [cited by applicant]
US 11363496B2 · Raleigh et al. · 2022 [cited by applicant]
US 11457040B1 · Sole et al. · 2022 [cited by applicant]
US 11573786B1 · Kiselev et al. · 2023 [cited by applicant]
US 11588794B2 · Keith, Jr. et al. · 2023 [cited by applicant]
US 11652815B2 · Keith, Jr. et al. · 2023 [cited by applicant]
US 11663030B2 · Kaimal et al. · 2023 [cited by applicant]
US 11695733B2 · Hastings · 2023 [cited by applicant]
US 11729144B2 · Ahn et al. · 2023 [cited by applicant]
US 11799831B2 · Vemulpali · 2023 [cited by applicant]
US 11900125B1 · Ramana · 2024 [cited by examiner]
US 12003543B1 · Ali · 2024 [cited by examiner]
US 20020161869A1 · Griffin et al. · 2002 [cited by applicant]
US 20050204041A1 · Blinn et al. · 2005 [cited by applicant]
US 20060271931A1 · Harris et al. · 2006 [cited by applicant]
US 20070156889A1 · Bhrara et al. · 2007 [cited by applicant]
US 20080034401A1 · Wang · 2008 [cited by examiner]
US 20080109871A1 · Jacobs · 2008 [cited by examiner]
US 20100094981A1 · Cordray et al. · 2010 [cited by applicant]
US 20100325588A1 · Reddy · 2010 [cited by examiner]
US 20110107331A1 · Evans et al. · 2011 [cited by applicant]
US 20130117817A1 · Gantman et al. · 2013 [cited by applicant]
US 20130201821A1 · Yamato et al. · 2013 [cited by applicant]
US 20140007222A1 · Qureshi · 2014 [cited by examiner]
US 20140047227A1 · Breternitz et al. · 2014 [cited by applicant]
US 20140047342A1 · Breternitz et al. · 2014 [cited by applicant]
US 20140172783A1 · Suzuki et al. · 2014 [cited by applicant]
US 20160092203A1 · Filali-adib et al. · 2016 [cited by applicant]
US 20160173535A1 · Barabash · 2016 [cited by examiner]
US 20160212167A1 · Dotan · 2016 [cited by examiner]
US 20160306862A1 · Sitsky · 2016 [cited by examiner]
US 20170090903A1 · Bainville et al. · 2017 [cited by applicant]
US 20170099280A1 · Goel et al. · 2017 [cited by applicant]
US 20170187750A1 · Zhang · 2017 [cited by examiner]
US 20170250867A1 · Kohli et al. · 2017 [cited by applicant]
US 20170316400A1 · Venkatakrishnan et al. · 2017 [cited by applicant]
US 20170318092A1 · Maredia et al. · 2017 [cited by applicant]
US 20180293152A1 · Sherafat Kazemzadeh et al. · 2018 [cited by applicant]
US 20190007392A1 · Rubiyath et al. · 2019 [cited by applicant]
US 20190050296A1 · Luo et al. · 2019 [cited by applicant]
US 20190149418A1 · Bertsche et al. · 2019 [cited by applicant]
US 20190229987A1 · Shelke et al. · 2019 [cited by applicant]
US 20190372938A1 · Pasdar · 2019 [cited by applicant]
US 20200067938A1 · Smith et al. · 2020 [cited by applicant]
US 20200092254A1 · Goeringer et al. · 2020 [cited by applicant]
US 20200137125A1 · Patnala · 2020 [cited by examiner]
US 20200153898A1 · Sabath et al. · 2020 [cited by applicant]
US 20200162922A1 · Kang et al. · 2020 [cited by applicant]
US 20200236112A1 · Pularikkal et al. · 2020 [cited by applicant]
US 20200249928A1 · Zeng et al. · 2020 [cited by applicant]
US 20200296119A1 · Lim · 2020 [cited by examiner]
US 20200326930A1 · Suryanarayana et al. · 2020 [cited by applicant]
US 20200344115A1 · Power et al. · 2020 [cited by applicant]
US 20200351157A1 · Patterson et al. · 2020 [cited by applicant]
US 20200382363A1 · Woolward · 2020 [cited by examiner]
US 20200382556A1 · Woolward · 2020 [cited by examiner]
US 20200382557A1 · Woolward · 2020 [cited by examiner]
US 20210029119A1 · Raman et al. · 2021 [cited by applicant]
US 20210152529A1 · Ruppin · 2021 [cited by examiner]
US 20210224093A1 · Fu et al. · 2021 [cited by applicant]
US 20210266346A1 · Gordon et al. · 2021 [cited by applicant]
US 20210314301A1 · Chanak et al. · 2021 [cited by applicant]
US 20210334004A1 · Krivenok · 2021 [cited by applicant]
US 20210334222A1 · Wood · 2021 [cited by applicant]
US 20210336959A1 · Shah et al. · 2021 [cited by applicant]
US 20210385129A1 · Shadbolt et al. · 2021 [cited by applicant]
US 20210389968A1 · Majewski et al. · 2021 [cited by applicant]
US 20220021665A1 · Barton et al. · 2022 [cited by applicant]
US 20220027138A1 · Stevens et al. · 2022 [cited by applicant]
US 20220035689A1 · Raheja · 2022 [cited by examiner]
US 20220078267A1 · Nixon et al. · 2022 [cited by applicant]
US 20220083602A1 · Agaon · 2022 [cited by examiner]
US 20220114157A1 · Rangasamy et al. · 2022 [cited by applicant]
US 20220191099A1 · Pieczul et al. · 2022 [cited by applicant]
US 20220191248A1 · Pieczul et al. · 2022 [cited by applicant]
US 20220210128A1 · Allam et al. · 2022 [cited by applicant]
US 20220210173A1 · Katmor et al. · 2022 [cited by applicant]
US 20220224621A1 · Devarajan et al. · 2022 [cited by applicant]
US 20220239491A1 · Sugarev · 2022 [cited by applicant]
US 20220247785A1 · Ly et al. · 2022 [cited by applicant]
US 20220247787A1 · Lippert · 2022 [cited by examiner]
US 20220255822A1 · Yousouf et al. · 2022 [cited by applicant]
US 20220272111A1 · Rao · 2022 [cited by examiner]
US 20220278900A1 · Pieczul et al. · 2022 [cited by applicant]
US 20220337576A1 · Rao Krishnagi et al. · 2022 [cited by applicant]
US 20220342775A1 · Takubo et al. · 2022 [cited by applicant]
US 20220350675A1 · Navali et al. · 2022 [cited by applicant]
US 20220368691A1 · Desarda et al. · 2022 [cited by applicant]
US 20220377093A1 · Crabtree et al. · 2022 [cited by applicant]
US 20220385563A1 · Lalani et al. · 2022 [cited by applicant]
US 20220400114A1 · Sreedhar et al. · 2022 [cited by applicant]
US 20220400116A1 · Sreedhar et al. · 2022 [cited by applicant]
US 20230025529A1 · Fu et al. · 2023 [cited by applicant]
US 20230035486A1 · Vergara et al. · 2023 [cited by applicant]
US 20230038058A1 · May · 2023 [cited by applicant]
US 20230060895A1 · Wu et al. · 2023 [cited by applicant]
US 20230069738A1 · Sreedhar et al. · 2023 [cited by applicant]
US 20230080458A1 · Lok et al. · 2023 [cited by applicant]
US 20230085848A1 · Saint Esteben · 2023 [cited by examiner]
US 20230088462A1 · Garrote · 2023 [cited by examiner]
US 20230097099A1 · Kothiyal et al. · 2023 [cited by applicant]
US 20230114821A1 · Thomas et al. · 2023 [cited by applicant]
US 20230117962A1 · Kaimal et al. · 2023 [cited by applicant]
US 20230119503A1 · Maheve et al. · 2023 [cited by applicant]
US 20230119767A1 · Pabón · 2023 [cited by applicant]
US 20230120522A1 · Bhandari et al. · 2023 [cited by applicant]
US 20230120785A1 · Kaimal et al. · 2023 [cited by applicant]
US 20230121834A1 · Kaimal et al. · 2023 [cited by applicant]
US 20230123781A1 · Kaimal et al. · 2023 [cited by applicant]
US 20230216685A1 · Kaimal et al. · 2023 [cited by applicant]
US 20230254318A1 · Hu et al. · 2023 [cited by applicant]
US 20230362202A1 · Li et al. · 2023 [cited by applicant]
CN 112788019 · 2021 [cited by applicant]
WO WO2023069129 · 2023 [cited by applicant]
USPTO, “U.S. Appl. No. 17/690,607 Notice of Allowance mailed Jan. 12, 2023”, 11 pages. [cited by applicant]
ISA/EP, “PCT Application No. PCT/US22/18635 International Search Report and Written Opinion mailed Aug. 16, 2022”, 19 pages. [cited by applicant]
ISA/EP, “PCT Application No. PCT/US22/18635 Invitation to Pay Additional Fees mailed Jun. 24, 2022”, 15 pages. [cited by applicant]
USPTO, “U.S. Appl. No. 17/690,766 Non-Final Office Action mailed May 10, 2023”, 20 pages. [cited by applicant]
USPTO, “U.S. Appl. No. 17/690,766 Final Office Action mailed Nov. 8, 2023”, 25 pages. [cited by applicant]
USPTO, “U.S. Appl. No. 17/690,654 Non-Final Office Action mailed Mar. 27, 2024”, 24 pages. [cited by applicant]
USPTO, “U.S. Appl. No. 17/690,681 Notice of Allowance mailed Feb. 8, 2024”, 6 pages. [cited by applicant]
USPTO, “U.S. Appl. No. 17/690,766 Non-Final Office Action mailed Apr. 10, 2024”, 28 pages. [cited by applicant]
Cited By (2)
US 12,613,955 US 12,634,351