IP Library Granted Patent US 10,469,314
Granted Patent B2
US 10,469,314 · App. 16/162,915 · Granted Nov 5, 2019

API gateway for network policy and configuration management with public cloud

Inventors: James D. Ennis, Jr. (Dalton, NH); Mehul Jayantilal Bhatt (Bangalore, IN); John Charles Voss (Redwood City, CA)
Assignee: Infoblox Inc.
H04L41/0803G06F9/54H04L12/66H04L41/0893H04L61/2015H04L61/2076H04L63/10H04L67/02H04L67/10H04L67/34H04L61/1511
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,469,314
App. No.
16/162,915
Granted
Nov 5, 2019
Kind
B2
Abstract

Techniques for providing an API gateway for network policy and configuration management with public cloud are disclosed. In some embodiments, a system, process, and/or computer program product for an API gateway for network policy and configuration management with public cloud includes receiving a native or extended public cloud application programming interface (API) request at the API gateway; processing the public cloud API request; extracting data from the request for use in other API calls; and, in some cases, translating the public cloud API request into a native public cloud API request with or without adding parameters or properties to and/or substituting new values for parameters in the public cloud API request (e.g., in some cases modifying the public cloud API request can include inserting additional parameters/properties, such as instance IP address that was not present in the initial API request); and sending the native public cloud API request to the public cloud environment.

Claims (66)

1. A system, comprising:

a processor of an application programming interface (API) gateway for network policy and configuration management with a public cloud environment, wherein the processor is configured to:

intercept an extended public cloud API request at the API gateway;

search a data store using an extensible attribute (EA) as a parameter in the extended public cloud API request;

obtain a next available Internet protocol (IP) address for a network matching a virtual private cloud (VPC) subnet identifier (ID) EA;

process the extended public cloud API request and translate the extended public cloud API request into a native public cloud API request that specifies the IP address; and

send the native public cloud API request to the public cloud environment for processing; and

a memory coupled to the processor and configured to provide the processor with instructions.

2. The system recited in claim 1 , wherein the API gateway inspects, processes, and modifies the extended public cloud API request to generate the native public cloud API request.

3. The system recited in claim 1 , wherein the API gateway is implemented on an appliance.

4. The system recited in claim 1 , wherein the API gateway is implemented on an appliance, and wherein the appliance includes an IP address appliance and/or a Domain Name System (DNS) record management appliance.

5. The system recited in claim 1 , wherein the API gateway is implemented on a cloud platform appliance, and wherein the cloud platform appliance includes a virtual IP address appliance and/or a Domain Name System (DNS) record management appliance.

6. The system recited in claim 1 , wherein the API gateway is implemented on a cloud platform appliance, and wherein the cloud platform appliance is configured as a primary cloud platform appliance for receiving cloud requests from a global cloud manager.

7. The system recited in claim 1 , wherein the public cloud API request is related to a resource in the public cloud environment, and wherein the resource in the public cloud environment is associated with a virtual resource.

8. The system recited in claim 1 , wherein the public cloud API request is related to a resource in the public cloud environment, and wherein the resource in the public cloud environment is associated with a physical resource.

9. The system recited in claim 1 , wherein the public cloud API request includes metadata that is not supported by the native API(s) for the public cloud environment.

10. The system recited in claim 1 , wherein the public cloud API request indicates whether a resource is a newly added resource in the public cloud environment, a deleted resource in the public cloud environment, or a modified resource in the public cloud environment.

11. The system recited in claim 1 , wherein the processor is further configured to:

parse and extract the EA included in the extended public cloud API request.

12. The system recited in claim 1 , wherein the processor is further configured to:

parse and extract the EA included in the extended public cloud API request; and

determine the network matching the VPC subnet ID EA or a Classless Inter-Domain Routing (CIDR) block.

13. The system recited in claim 1 , wherein the processor is further configured to:

communicate with a grid master or a cloud member that is authoritative for an object associated with the public cloud API request.

14. A method, comprising:

intercepting an extended public cloud API request at an API gateway for network policy and configuration management with a public cloud environment;

searching a data store using an extensible attribute (EA) as a parameter in the extended public cloud API request;

obtaining a next available Internet protocol (IP) address for a network matching a virtual private cloud (VPC) subnet identifier (ID) EA;

processing the extended public cloud API request and translating the extended public cloud API request into a native public cloud API request that specifies the IP address; and

sending the native public cloud API request to the public cloud environment for processing.

15. The method of claim 14 , further comprising:

parsing and extracting the EA included in the extended public cloud API request.

16. The method of claim 14 , further comprising:

parsing and extracting the EA included in the extended public cloud API request; and

determining the network matching the VPC subnet ID EA or a Classless Inter-Domain Routing (CIDR) block.

17. The method of claim 14 , further comprising:

communicating with a grid master or a cloud member that is authoritative for an object associated with the public cloud API request.

18. The method of claim 14 , wherein the API gateway inspects, processes, and modifies the extended public cloud API request to generate the native public cloud API request.

19. The method of claim 14 , wherein the API gateway is implemented on an appliance, and wherein the appliance includes an IP address appliance and/or a Domain Name System (DNS) record management appliance.

20. The method of claim 14 , wherein the API gateway is implemented on a cloud platform appliance, and wherein the cloud platform appliance includes a virtual IP address appliance and/or a Domain Name System (DNS) record management appliance.

21. The method of claim 14 , wherein the API gateway is implemented on a cloud platform appliance, and wherein the cloud platform appliance is configured as a primary cloud platform appliance for receiving cloud requests from a global cloud manager.

22. The method of claim 14 , wherein the public cloud API request is related to a resource in the public cloud environment, and wherein the resource in the public cloud environment is associated with a virtual resource.

23. The method of claim 14 , wherein the public cloud API request is related to a resource in the public cloud environment, and wherein the resource in the public cloud environment is associated with a physical resource.

24. The method of claim 14 , wherein the public cloud API request includes metadata that is not supported by the native API(s) for the public cloud environment.

25. The method of claim 14 , wherein the public cloud API request indicates whether a resource is a newly added resource in the public cloud environment, a deleted resource in the public cloud environment, or a modified resource in the public cloud environment.

26. A computer program product, the computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for:

intercepting an extended public cloud API request at an API gateway for network policy and configuration management with a public cloud environment;

searching a data store using an extensible attribute (EA) as a parameter in the extended public cloud API request;

obtaining a next available Internet protocol (IP) address for a network matching a virtual private cloud (VPC) subnet identifier (ID) EA;

processing the extended public cloud API request and translating the extended public cloud API request into a native public cloud API request that specifies the IP address; and

sending the native public cloud API request to the public cloud environment for processing.

27. The computer program product recited in claim 26 , further comprising computer instructions for:

parsing and extracting the EA included in the extended public cloud API request.

28. The computer program product recited in claim 26 , further comprising computer instructions for:

parsing and extracting the EA included in the extended public cloud API request; and

determining the network matching the VPC subnet ID EA or a Classless Inter-Domain Routing (CIDR) block.

29. The computer program product recited in claim 26 , further comprising computer instructions for:

communicating with a grid master or a cloud member that is authoritative for an object associated with the public cloud API request.

30. The computer program product recited in claim 26 , wherein the API gateway inspects, processes, and modifies the extended public cloud API request to generate the native public cloud API request.

31. The computer program product recited in claim 26 , wherein the API gateway is implemented on an appliance, and wherein the appliance includes an IP address appliance and/or a Domain Name System (DNS) record management appliance.

32. The computer program product recited in claim 26 , wherein the API gateway is implemented on a cloud platform appliance, and wherein the cloud platform appliance includes a virtual IP address appliance and/or a Domain Name System (DNS) record management appliance.

33. The computer program product recited in claim 26 , wherein the API gateway is implemented on a cloud platform appliance, and wherein the cloud platform appliance is configured as a primary cloud platform appliance for receiving cloud requests from a global cloud manager.

34. The computer program product recited in claim 26 , wherein the public cloud API request is related to a resource in the public cloud environment, and wherein the resource in the public cloud environment is associated with a virtual resource.

35. The computer program product recited in claim 26 , wherein the public cloud API request is related to a resource in the public cloud environment, and wherein the resource in the public cloud environment is associated with a physical resource.

36. The computer program product recited in claim 26 , wherein the public cloud API request includes metadata that is not supported by the native API(s) for the public cloud environment.

37. The computer program product recited in claim 26 , wherein the public cloud API request indicates whether a resource is a newly added resource in the public cloud environment, a deleted resource in the public cloud environment, or a modified resource in the public cloud environment.

Assignments (2)
FIRST LIEN SECURITY AGREEMENT Recorded Dec 2, 2020
From: INFOBLOX INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054615/0317 →
SECOND LIEN SECURITY AGREEMENT Recorded Dec 2, 2020
From: INFOBLOX INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054615/0331 →
Cited By (13)
US 12,287,906 US 12,299,502 US 12,307,305 US 12,335,318 US 12,353,877 US 12,363,114 US 12,386,684 US 12,401,694 US 12,405,948 US 12,407,647 US 12,437,057 US 12,498,998 US 12,693,839