Page MenuHomePhabricator

[identity] add session initialization info to RegisterUser and LoginUser RPCs
ClosedPublic

Authored by varun on Feb 27 2023, 7:19 PM.
Tags
None
Referenced Files
F3393457: D6910.id23239.diff
Sat, Nov 30, 2:14 PM
Unknown Object (File)
Wed, Nov 27, 6:53 PM
Unknown Object (File)
Wed, Nov 27, 6:38 PM
Unknown Object (File)
Wed, Nov 27, 4:35 PM
Unknown Object (File)
Oct 26 2024, 10:55 PM
Unknown Object (File)
Oct 26 2024, 10:55 PM
Unknown Object (File)
Oct 26 2024, 10:55 PM
Unknown Object (File)
Oct 26 2024, 10:55 PM
Subscribers

Details

Summary

We need to send session initialization info to the identity service as part of the registration and login workflows so that the service can provide this info to clients trying to establish a new channel of communication subsequently with a given user.

The contents of the session initialization map are described in the .proto file.

Test Plan
  1. Tried to register a new user without session initialization info, failed as expected
  2. Tried to register a new user with session initialization info, succeeded and DDB showed the keys + signature + social proof
  3. Tried to log in an existing user with new session initialization info (i.e. different device), succeeded and DDB showed both sets of info, keyed by the public key

Diff Detail

Repository
rCOMM Comm
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Harbormaster returned this revision to the author for changes because remote builds failed.Feb 27 2023, 7:22 PM
Harbormaster failed remote builds in B16974: Diff 23210!

I've left some "todo's" in the native_rust_library part of this diff. CXX doesn't support HashMaps yet, so we probably need to provide each key-value pair individually. Since we're not actually using this code right now, I'm deferring this work. Not creating a linear task immediately since it'll be obvious to address this when we get to it next month

varun requested review of this revision.Feb 27 2023, 8:00 PM
This revision is now accepted and ready to land.Feb 28 2023, 12:27 AM

the rust is pretty boilerplate, but I'll defer to someone else about intent