1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-12-01 03:02:43 +01:00
phorge-phorge/src/applications/auth
epriestley 7797443428 Support invites in the registration and login flow
Summary:
Ref T7152. This substantially completes the upstream login flow. Basically, we just cookie you and push you through normal registration, with slight changes:

  - All providers allow registration if you have an invite.
  - Most providers get minor text changes to say "Register" instead of "Login" or "Login or Register".
  - The Username/Password provider changes to just a "choose a username" form.
  - We show the user that they're accepting an invite, and who invited them.

Then on actual registration:

  - Accepting an invite auto-verifies the address.
  - Accepting an invite auto-approves the account.
  - Your email is set to the invite email and locked.
  - Invites get to reassign nonprimary, unverified addresses from other accounts.

But 98% of the code is the same.

Test Plan:
  - Accepted an invite.
  - Verified a new address on an existing account via invite.
  - Followed a bad invite link.
  - Tried to accept a verified invite.
  - Reassigned an email by accepting an unverified, nonprimary invite on a new account.
  - Verified that reassigns appear in the activity log.

{F291493}
{F291494}
{F291495}
{F291496}
{F291497}
{F291498}
{F291499}

Reviewers: btrahan

Reviewed By: btrahan

Subscribers: epriestley

Maniphest Tasks: T7152

Differential Revision: https://secure.phabricator.com/D11737
2015-02-11 06:06:28 -08:00
..
action Rate limit multi-factor actions 2014-04-30 14:30:31 -07:00
application Add email invites to Phabricator (logic only) 2015-02-09 16:12:36 -08:00
capability Auth - add "manage providers" capability 2015-01-12 14:37:58 -08:00
conduit Add auth.querypublickeys to retrieve public keys 2015-02-10 15:44:21 -08:00
constants Support invites in the registration and login flow 2015-02-11 06:06:28 -08:00
controller Support invites in the registration and login flow 2015-02-11 06:06:28 -08:00
data Send emails for email invites 2015-02-11 06:06:09 -08:00
editor Auth - allow for "auto login" providers 2015-02-06 10:50:36 -08:00
engine Support invites in the registration and login flow 2015-02-11 06:06:28 -08:00
exception Add email invites to Phabricator (logic only) 2015-02-09 16:12:36 -08:00
factor Add email invites to Phabricator (logic only) 2015-02-09 16:12:36 -08:00
garbagecollector Add "temporary tokens" to auth, for SMS codes, TOTP codes, reset codes, etc 2014-05-20 11:43:45 -07:00
management OAuth - add concept of "trusted" clients that get auto redirects 2015-02-09 14:23:49 -08:00
phid Add administrative invite interfaces 2015-02-11 06:05:53 -08:00
provider Support invites in the registration and login flow 2015-02-11 06:06:28 -08:00
query Send emails for email invites 2015-02-11 06:06:09 -08:00
sshkey Work around lack of PKCS8 support in OSX ssh-keygen 2014-12-19 16:36:40 -08:00
storage Send emails for email invites 2015-02-11 06:06:09 -08:00
view Add administrative invite interfaces 2015-02-11 06:05:53 -08:00
worker Send emails for email invites 2015-02-11 06:06:09 -08:00