Closed cberkhoff closed 1 month ago
Attention: Patch coverage is 91.79104%
with 11 lines
in your changes missing coverage. Please review.
Project coverage is 93.48%. Comparing base (
41b057c
) to head (c3377eb
). Report is 18 commits behind head on main.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
The authentication requirements for shard communication are different than for helper-to-helper communication. Between helpers, it is important to prevent e.g. impersonation of H1 by H2. Between shards, that is not important. I would still want a secure connection with some kind of authentication (i.e., don't presume that shard-to-shard communication is over a trusted network). But the different shards are under the control of a single helper operator, so it's not important to prevent shard 2 from claiming to be shard 3.
Where I'm going with this is, we don't need to provision a unique certificate for each shard, if it saves work to not do so.
Where I'm going with this is, we don't need to provision a unique certificate for each shard, if it saves work to not do so.
I'm planning to use the same certificate for both helper-to-helper and shard-to-shard. The certificate identifying the host regardless of the communication. Let me know what you think.
This is the first of a series of pull requests (PR) to enable sharding on IPA.
This change doesn't meaningfully change any tests or the operation of IPA. This is just adding abstractions that are going to be useful later.
The key introduction of this PR is the
TransportRestriction
trait. Please take a read at the included docs for more details. To make more sense of the intended usage of this new trait, I'm modifyingMpcHelperClient
to make use of it, but without altering it's API, yet. I understand the scope of this example is limited, hence I can answer questions about its future use if needed.Renamed
ClientIdentity::Helper
toClientIdentity::Header
since I'm planning to use the same mechanism for Shard to Shard identity resolution.