Systems and methods for managing custom code in a data computing platform
A system for managing custom code within a data computing platform determines that a request for one or more uniform resource identifiers external to the platform is being made by custom code executing in the platform. In response to the determination, the system checks a whitelist of allowable external URIs against the requested one or more URIs and allows access to the requested one or more URIs if a match is detected with the whitelist, otherwise access by the custom code to the requested one or more URIs is denied. In addition, or alternatively, the system checks a blacklist of disallowed external URIs against the requested one or more URIs and denies access to the requested one or more URIs if a match is detected with the blacklist, otherwise access by the custom code to the requested one or more URIs is allowed. The blacklist can override the whitelist.
1. A method for managing custom code within a data computing platform comprising:
determining that a request for one or more uniform resource identifiers external to the data computing platform is being made by the custom code executing in the data computing platform;
in response to the determination, checking a whitelist of allowable external uniform resource identifiers against the requested one or more uniform resource identifiers;
linking a manifest file to a project identifier related to the custom code, the manifest file including the whitelist;
allowing access by the custom code to the requested one or more uniform resource identifiers if a match is detected with the whitelist, otherwise denying access by the custom code to the requested one or more uniform resource identifiers;
checking a blacklist of uniform resource identifiers external to the data computing platform per registered organization level; and
denying access by the custom code to a whitelisted uniform resource identifier if the whitelisted uniform resource identifier is on the blacklist;
wherein the method is performed using one or more processors.
2. The method of claim 1 wherein the determining that the request for the one or more uniform resource identifiers external to the data computing platform is being made by custom code comprises employing a proxy server to intercept the request for the one or more uniform resource identifiers external to the data computing platform.
3. The method of claim 1 wherein the allowable uniform resource identifiers are approved to be accessed by the custom code during execution of the custom code.
4. The method of claim 1 wherein the whitelist comprises data representing that a data set can be accessed by the requested one or more external uniform resource identifiers.
5. The method of claim 1 comprising providing through the data computing platform, a user interface configured to allow generation of a default whitelist on a per custom code basis and configured to allow changes to the default whitelist.
6. A system for managing custom code within a data computing platform, the system comprising:
one or more processors; and
non-transitory storage medium that stores executable instructions that when executed causes the one or more processors to:
determine that a request for one or more uniform resource identifiers external to the data computing platform is being made by the custom code executing in the data computing platform;
in response to the determination, check a whitelist of allowable external uniform resource identifiers against the requested one or more uniform resource identifiers;
link a manifest file to a project identifier related to the custom code, the manifest file including the whitelist;
allow access by the custom code to the requested one or more uniform resource identifiers if a match is detected with the whitelist, otherwise deny access by the custom code to the requested one or more uniform resource identifiers;
check a blacklist of uniform resource identifiers external to the data computing platform per registered organization level; and
deny access to a whitelisted uniform resource identifier if the whitelisted uniform resource identifier is on the blacklist.
7. The system of claim 6 wherein the non-transitory storage medium that stores executable instructions that when executed causes the one or more processors to employ a proxy server to intercept the request for the one or more uniform resource identifiers external to the data computing platform.
8. The system of claim 6 wherein the allowable uniform resource identifiers are approved to be accessed by the custom code during execution of the custom code.
9. The system of claim 6 wherein the non-transitory storage medium that stores executable instructions that when executed causes the one or more processors to store the whitelist that comprises data representing that a data set can be accessed by the requested one or more external uniform resource identifiers.
10. The system of claim 6 wherein the non-transitory storage medium that stores executable instructions that when executed causes the one or more processors to provide a user interface configured to allow generation of a default whitelist on a per custom code basis and configured to allow changes to the default whitelist.
11. A non-transitory storage medium that comprises executable instructions that when executed by one or more processors, causes the one or more processors to:
determine that a request for one or more uniform resource identifiers external to the data computing platform is being made by custom code executing in a data computing platform;
in response to the determination, check a whitelist of allowable external uniform resource identifiers against the requested one or more uniform resource identifiers;
link a manifest file to a project identifier related to the custom code, the manifest file including the whitelist;
allow access by the custom code to the requested one or more uniform resource identifiers if a match is detected with the whitelist, otherwise deny access by the custom code to the requested one or more uniform resource identifiers;
check a blacklist of uniform resource identifiers external to the data computing platform per registered organization level; and
deny access by the custom code to a whitelisted uniform resource identifier if the whitelisted uniform resource identifier is on the blacklist.
12. The non-transitory storage medium of claim 11 comprising executable instructions that when executed by one or more processors, causes the one or more processors to: wherein the non-transitory storage medium that stores executable instructions that when executed causes the one or more processors to employ a proxy server to intercept the request for the one or more uniform resource identifiers external to the data computing platform.
13. The non-transitory storage medium of claim 11 wherein the allowable uniform resource identifiers are approved to be accessed by the custom code during execution of the custom code.
14. The non-transitory storage medium of claim 11 comprising executable instructions that when executed causes the one or more processors to store the whitelist that comprises data representing that a data set can be accessed by the requested one or more external uniform resource identifiers.
15. The non-transitory storage medium of claim 11 comprising executable instructions that when executed causes the one or more processors to provide a user interface configured to allow generation of a default whitelist on a per custom code basis and configured to allow changes to the default whitelist.