from the user story in an https://lcw.app project description:
Alice decides she no longer wants to use her wallet attached storage provider.
In LCW, she goes to Settings > Disconnect and Erase Cloud Storage.
LCW sends a DELETE request to the connected storage instance (with appropriate authorization).
The storage provider deletes the contents of her storage instance, deletes and de-provisions the storage space itself.
Request DELETE
to the Space URI. Create a signature with a key authorized by the space controller, and include it as an HTTP Signature.
The HTTP Signature keyId must be controlled by the Space controller
or a DID that has a zcap chain rooted in the space controller and authorizing DELETE
of the space.
Here is an example of deleting a space via curl:
⚡ curl 'http://localhost:5173/space/6f7d21d4-25fa-56fe-9c92-4970205456e3/credentials/84a1da76-d20c-5ed4-9b45-29b129bcac65' \
-X DELETE \
-H 'authorization: Signature keyId="did:key:z6MkoMrZ5DPgKyAMQugRDybpdQnwSds77bMLSuDXXhnpFBsL#z6MkoMrZ5DPgKyAMQugRDybpdQnwSds77bMLSuDXXhnpFBsL",headers="(key-id) (created) (expires) (request-target) host",signature="quM0giilikWk3yC5eGlz0PtnwZqTn3DKC+YEncLfjwjyUK/jitEHT2XzrBDTYi5Jsz+VrZw3s5uKrWB2vG78AA==",created="1734569659",expires="1734570259"' -i
HTTP/1.1 204 No Content
This section describes how to confirm that an implementation has satisfied the user story.
Given
when
/space/:spaceUuid
and follows response redirects200
, 204
./space/:spaceUuid
DELETE /space/:spaceUuid HTTP/1.1
Authorization: Signature keyId="did:key:{mk}#{mk}"…
We seek to socialize this user story widely as a core user story for the Wallet Attached Storage protocol.
Plan of conversation:
If you want to be a part of the conversation, please publish feedback and link to Wallet Attached Storage.
wallet-attached-storage-server implemented this user story in https://github.com/did-coop/wallet-attached-storage-server/issues/18.
@wallet.storage/wasup is a CLI and supports sending DELETE requests as described above like
wasfetch [--identity ~/.ssh/id_ed25519_was_test] $WAS/space/$SPACE -m delete