campaigns: support per-user tokens when interacting with code hosts
Created by: LawnGnome
This is nowhere near complete right now. It will eventually close #13862.
Tasks
-
Add a database migration. -
Add the new UserToken
type and its store methods. -
Plumb the tokens through to the reconciler and syncer to ensure that the basic model works OK. -
Validate that tokens really are stored encrypted (since this is the first time I've used secret
). -
Add GraphQL queries and mutations to manipulate tokens on a per-user basis, ensuring that the token is never returned in full. -
Build a user token setting UI. -
Add queries and mutations for admins to manage tokens on behalf of their users. -
Build an admin UI.