Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Should we allow creation of participants with uuids provided by the client? #130

Open
oliverbarnes opened this issue Sep 11, 2020 · 0 comments

Comments

@oliverbarnes
Copy link
Member

oliverbarnes commented Sep 11, 2020

This has come up during investigation of #128, and needs further discussion:

One of the reasons we decided to use uuids as ids is to enable passing around of identifiers to/from clients and other services, and we're supporting for pre-existing resources in our system - votes, delegations and participants already persisted in the database.

Currently we support upserts of participants on delegation and voting creation based on emails provided by the client.

Another potential scenario is when the client already generates uuids for their participants (for which they're the source the truth), and submits that to us instead of an email. For instance, when creating a delegation, submitting delegator_id and delegate_id instead of a delegator_email and delegate_email. This could be a way to improve the privacy of the participant in our system. We'd only know their client-side id.

Questions raised so far:

  • YAGNI?
  • any security issues with passing around a direct db identifier like that?
  • in some instances clients will create a view-only uuid, and sometimes that's ephemeral. How do we handle that?
@oliverbarnes oliverbarnes changed the title Should we allow creation of participants with uuids provided by the client Should we allow creation of participants with uuids provided by the client? Sep 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant