US 12,443,579 B1
Secure query processing
Andrei Paduroiu, Bellevue, WA (US); and Yaron Burd, Bellevue, WA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Dec. 15, 2022, as Appl. No. 18/082,559.
Int. Cl. G06F 16/22 (2019.01); G06F 16/245 (2019.01)
CPC G06F 16/2246 (2019.01) [G06F 16/245 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A system, comprising:
one or more computing devices comprising at least one processor and at least one memory that stores computer-executable instructions that, in response to execution by the at least one processor, cause the system to at least:
receive a query at a query coordinator;
generate, by a frontend of the query coordinator, a first abstract syntax tree (AST) based, at least in part, on the query;
serialize, by the frontend of the query coordinator, data that represents the first AST;
generate, by a backend of the query coordinator, a second AST based, at least in part, on the serialized data;
evaluate, by a sanitizer of the backend of the query coordinator, the second AST for a security risk by at least enforcing one or more security rules;
generate, by the backend of the query coordinator, a third AST that is a modified version of the second AST in which the security risk is mitigated; and
cause a query plan based, at least in part, on the third AST to be executed by a query engine executor sandboxed from the frontend and the backend of the query coordinator.