SSH Key name allows spaces

Description

Currently it is possible to create a ssh key for a user where the key name contains a space:

PUT /api/0.1.0/users/7df734a1-7332-45da-aa2a-9a3d856fa58a/keys HTTP/1.1
Accept: application/json
x-snarl-token: b73b7780-7677-430b-81ef-a57427d166b2
Content-Type: application/json

{
"Bad Key Name":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDZyw2HsD2TBPpBcCJLge4Eu1N9IXHx0S9APSdC4GEre3h4huNT9LUA78oOB1LDIyqmwbHy5yqVVBht4awmcveaSsBIDEPBrU+ZrSeibg3ikQxBYA+7IG8gwvEqxI9EdbnF6eqstfiUIaLsLuUY2E2b2DGIohy/NIw0tccchLR0kHUGz4yjmMZg78X9ux2VqFhlTfj3xDsagxFjo90FQkrO32SLULFS9fG5Ki8vsvhfkhhtgct74i894lj4DRThqmvgygODXcyvi/wtixaqKqcn+Y1JCr5AsvXvYmWQzdRh9Rv77j0mleo0xqosqXIH1HqsM4CJmdYGCPU7JB6k0j/H test@testhost"
}

But it becomes impossible to delete this key because of how the name is url encoded (I assume)

HTTP DELETE
http://localhost:8888/api/0.2.0/users/24b02dad-d433-41b2-9a08-364b4a37aa42/keys/Bad%20Key%20Name

Returns HTTP 204, but no action is actually taken.

Environment

None

Status

Assignee

Heinz N. Gies

Reporter

Kevin Meziere

Labels

None

Components

Fix versions

Affects versions

Priority

High
Configure