Relay Connection Types

The connection type specified on a communication channel restricts how/if a proxy call is allowed, either directly or passing through. Each channel has its own proxy access type and does not affect other channels.

Any grid in a relay setup can have a single parent and any number of children. Note that even though the connection is one-way, communication on that channel is bi-directional which is why the access type must be specified on both ends.

When specifying the relay connection type for a child grid, the local access type of incoming proxy method calls to the local grid can be specified in one of the following ways:

no_access Neither the parent grid nor any other grid connected to the parent has proxy method access.
peer_only Only the parent grid has proxy method access.
peer_chain The parent grid and its direct ancestors have proxy method access (that is, the parent grid's parent and its direct parent and so on, but none other).
full_access The parent grid and any grid connected to the parent grid has proxy method access.

When approving a relay connection in the parent grid, the local access type for incoming proxy method calls to the local grid can be specified in one of the following ways:

no_access Neither the child grid nor any other grid connected to the child has proxy method access.
peer_only Only the child grid has proxy method access, but not any of its children.
peer_chain The child grid and all of its children have proxy method access.
full_access The child grid and all of its children have proxy method access.

Note that it is currently not possible to set up access between relay siblings (that is, two or more grids sharing a common parent) unless full_access is granted on both sides of all connections from and to the parent grid.

Since the access types of a relay channel are embedded in the certificate, the connection must be removed and re-created in order to specify a different pair of access types.