User Account Termination and Resource Clearing

Registered by Amelia Cordwell

Allow a user to activate a full account termination from adjutant, or clear all resources from a service/all services.

Both require a token submission, clearing a project does not require admin approval (as the actions undertaken can be done rather tediously by users) however a full account termination does.

Design:
Actions:
Individual actions for each service deletion inherit from a base deletion action which manages role addition and deletion to the project. Rather than having an individual selector the selection for clearing will be based on a list passed to all of them, compared with their resouce_type. The DisableKeystoneAction however is separate.

Tasks:
Access is restricted to project admin.

/v1/openstack./project-clear/: (ProjectClear)
- GET returns list of resource types (ie compute, blockstorage)
- POST starts the task with the given type_deletion_list (defaulting to all services).

/v1/openstack/project-terminate/: (ProjectTerminate)
- POST starts the task, requiring admin approval before the token stage. Gives the user a confirmation on whether they just want to delete their resources on token submit.

Horizon:
- A panel + token handlers.

Asynchronous token submit:
- The deletion process can take quite a while, as such should be undertaken asynchronously with an email being sent to the user after completion. While currently the horizon panel just fakes this is should be something that is moved towards in the future.

Emails:
Token email will contain a list of all the resources to be deleted, and if keystone will be disabled.
A final email will be send after the actions have completed.

Blueprint information

Status:
Started
Approver:
None
Priority:
Undefined
Drafter:
Amelia Cordwell
Direction:
Needs approval
Assignee:
Amelia Cordwell
Definition:
Review
Series goal:
None
Implementation:
Started
Milestone target:
None
Started by
Amelia Cordwell

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.