Secure message exchange between deployments
Different database deployments, or other data system deployments, may want to communicate with each other without sacrificing security or control. To this end, embodiments of the present disclosure may provide secure message exchange techniques for a source and/or target deployment. Configurable rule sets may be stored in the deployments; the rule sets may define what messages may be communicated between deployments. The deployments may implement a selective filtering scheme in one or more stages based on the rule sets to filter outgoing and/or incoming messages.
1 . A method comprising:
receiving, by one or more processors of a first deployment, a message from a first computing device in the first deployment to be transmitted to a recipient in a second deployment, the first and second deployments being different types of deployments in a network-based data system;
detecting that the second deployment has been compromised;
blocking transmission of the message to the second deployment based on detecting that the second deployment has been compromised;
detecting that the second deployment is no longer compromised;
continuing with transmission process of the message to the second deployment based on detecting that the second deployment is no longer compromised;
detecting a message type of the message as either a first set of message types or a second set of message types, the message type defining an operation to be performed on stored data associated with the first or second deployments;
based on the detected message type belonging to the first set of message types, blocking transmission of the message to the second deployment; and
based on the detected message type belonging to the second set of message types, transmitting the message from the first deployment to the second deployment.
2 . The method of claim 1 , wherein the first deployment being a private data-system deployment where processing and storage resources are dedicated to a single tenant and the second deployment being a public data-system deployment where processing and storage resources are shared by multiple tenants.
3 . The method of claim 1 , wherein the first deployment is located at a first geographic location and the second deployment is located at a second geographic location.
4 . The method of claim 1 , wherein detecting that second deployment has been compromised is based on a notification received from the second deployment.
5 . The method of claim 1 , wherein detecting that the second deployment is no longer compromised is based on a notification received from the second deployment.
6 . The method of claim 1 , further comprising:
blocking reception of messages from the second deployment based on detecting that the second deployment has been compromised.
7 . A system comprising:
one or more processors of a machine; and
at least one memory storing instructions that, when executed by the one or more processors, cause the machine to perform operations comprising:
receiving, by one or more processors of a first deployment, a message from a first computing device in the first deployment to be transmitted to a recipient in a second deployment, the first and second deployments being different types of deployments in a network-based data system;
detecting that the second deployment is no longer compromised;
continuing with transmission process of the message to the second deployment based on detecting that the second deployment is no longer compromised;
detecting a message type of the message as either a first set of message types or a second set of message types, the message type defining an operation to be performed on stored data associated with the first or second deployments;
based on the detected message type belonging to the first set of message types, blocking transmission of the message to the second deployment; and
based on the detected message type belonging to the second set of message types, transmitting the message from the first deployment to the second deployment.
8 . The system of claim 7 , wherein the first deployment being a private data-system deployment where processing and storage resources are dedicated to a single tenant and the second deployment being a public data-system deployment where processing and storage resources are shared by multiple tenants.
9 . The system of claim 7 , wherein the first deployment is located at a first geographic location and the second deployment is located at a second geographic location.
10 . The system of claim 7 , wherein detecting that second deployment has been compromised is based on a notification received from the second deployment.
11 . The system of claim 7 , wherein detecting that the second deployment is no longer compromised is based on a notification received from the second deployment.
12 . The system of claim 7 , the operations further comprising:
blocking reception of messages from the second deployment based on detecting that the second deployment has been compromised.
13 . A machine-storage medium embodying instructions that, when executed by a machine, cause the machine to perform operations comprising:
receiving, by one or more processors of a first deployment, a message from a first computing device in the first deployment to be transmitted to a recipient in a second deployment, the first and second deployments being different types of deployments in a network-based data system;
detecting that the second deployment is no longer compromised;
continuing with transmission process of the message to the second deployment based on detecting that the second deployment is no longer compromised;
detecting a message type of the message as either a first set of message types or a second set of message types, the message type defining an operation to be performed on stored data associated with the first or second deployments;
based on the detected message type belonging to the first set of message types, blocking transmission of the message to the second deployment; and
based on the detected message type belonging to the second set of message types, transmitting the message from the first deployment to the second deployment.
14 . The machine-storage medium of claim 13 , wherein the first deployment being a private data-system deployment where processing and storage resources are dedicated to a single tenant and the second deployment being a public data-system deployment where processing and storage resources are shared by multiple tenants.
15 . The machine-storage medium of claim 13 , wherein the first deployment is located at a first geographic location and the second deployment is located at a second geographic location.
16 . The machine-storage medium of claim 13 , wherein detecting that second deployment has been compromised is based on a notification received from the second deployment.
17 . The machine-storage medium of claim 13 , wherein detecting that the second deployment is no longer compromised is based on a notification received from the second deployment.
18 . The machine-storage medium of claim 13 , further comprising:
blocking reception of messages from the second deployment based on detecting that the second deployment has been compromised.