-
Notifications
You must be signed in to change notification settings - Fork 252
NuGet Account Deletion Workflow (Self Service Model)
Karan Nandwani edited this page Aug 24, 2016
·
4 revisions
##Customer View Add a "Delete Account" section under https://www.nuget.org/account that triggers the following workflow:
- Clicking on more info expands the Delete account section (similar to profile picture, by clicking 'more info')
- Clearly states the consequences of proceeding with this action (along with a link to a new doc with detailed information)
- User has to type the phrase "delete my account" in the box provided for it
- User has to type the password
- Click on "Delete my account" button
If the phrase and password check pass:
- The account is deleted immediately - the user is logged out and will no longer be able to login with the same credentials
- https://www.nuget.org/profiles/username redirects to the ghost account profile
- the username is stored in a non-retrievable form (this is to ensure compliance with privacy guidelines)
- The account will be removed as the owner from all associated packages
- All orphaned packages will be re-parented under a ghost account and the author field will be overwritten with "Deleted User"
- The co-owners get an email stating that an owner account has been deleted and hence removed as one of the owners of the package.
##Solution - Cadillac version Below is the advanced workflow with the cooling period safeguard that gives the user 'x' number of days to change his/her mind. Based on feedback, we can consider investing in implementing this.
###Delete
- When clicked, if the account has associated packages
- If the account being deleted is the only owner, provide information about adding co-owners. The user can choose to not add a co-owner and we should provide information that in this case, the package will be re-parented under a
- If the associated package has additional authors, the account being deleted is simply removed from the list of owners for that package. The co-owners get a notification that an account has been marked for deletion.
- Next, ask for a confirmation with a clear message that the user understands the implication (see Legal section below) and that he/she has 30 days to change their mind.
- When the user confirms, mark the account for deletion and display the date when the deletion would happen.
- When marked for deletion, we freeze all activity which means the user can’t change any account settings or push packages.
- The account page is greyed out with the message that the account is marked for deletion along with the date on which that will happen and a button to “Reactivate account”.
- If the user clicks “Reactivate account”, ask confirmation and display a message with the implications.
- If the user confirms, all functionality is restored.
- The co-owners of all packages get a notification stating that the account has been reactivated.
Check out the proposals in the accepted
& proposed
folders on the repository, and active PRs for proposals being discussed today.