pub struct OrgJoinCodeResult {
pub display_name: String,
pub requested_user_id: String,
pub device_label: String,
pub join_code_fingerprint: String,
}Expand description
Result of Request::OrgJoinCode (#66): what a join code claims, plus the fingerprint that
decides whether to believe it.
The claims are ATTACKER-CONTROLLED — they come out of a code someone handed you. display_name
and requested_user_id are what the sender asked for, not facts. What is verified is the
device→user-key binding (a bad one is refused rather than reported), and what is checkable is
join_code_fingerprint.
Fields§
§display_name: StringThe human name the code carries. Sender-chosen — render it, do not trust it.
requested_user_id: StringThe user_id the sender is asking for. Sender-chosen, and it is what every allow entry
would name, so it is worth an operator’s attention before approving.
device_label: StringThe label of the device being enrolled. Sender-chosen.
join_code_fingerprint: StringThe fingerprint in short words — the enrollment analogue of the pairing SAS.
Show this and have the operator confirm it out-of-band before calling
Request::OrgApprove. Nothing in a join code binds it to a person; a substituted code
carries a different user_pk and so diverges here. This is the entire check.
Trait Implementations§
Source§impl Clone for OrgJoinCodeResult
impl Clone for OrgJoinCodeResult
Source§fn clone(&self) -> OrgJoinCodeResult
fn clone(&self) -> OrgJoinCodeResult
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more