Configure multiple private states
To use multi-tenancy, you must enable GoQuorum multiple private states (MPS).
To do this, set enableMultiplePrivateStates
in the Tessera configuration file to true
.
Enable MPS configuration
"features" : {
"enableMultiplePrivateStates" : "true"
}
Resident groups
When MPS is enabled, all keys configured must belong to a resident privacy group, or resident group. Specify residentGroups
in the configuration file as shown in the following example.
Resident group configuration
"residentGroups": [
{
"name": "PS1",
"members": ["publicKey1", "publicKey2"],
"description": "Private state 1"
},
{
"name": "PS2",
"members": ["publicKey3", "publicKey4"],
"description": "Private State 2"
}
]
Tessera loads the resident group configuration, performs the following validations during startup (when enableMultiplePrivateStates
is set to true
), and persists relevant data to its database:
- All members of resident groups must be locally managed by the node.
- A member can't be configured to belong to more than one resident group at any time (all history considered).
- All keys configured must belong to a resident group and no key can be left out.
important
Tessera can't start with enableMultiplePrivateStates
set to true
AND an invalid resident group configuration.