Skip to content

Commit 25b102a

Browse files
authored
fix: ensure that security-key backed SSH keys are supported (#807)
1 parent 5c94c6c commit 25b102a

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

internal/utils/ssh.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ var ValidSSHKeyTypes = []string{
2020
ssh.KeyAlgoECDSA256,
2121
ssh.KeyAlgoECDSA384,
2222
ssh.KeyAlgoECDSA521,
23+
ssh.KeyAlgoSKED25519,
24+
ssh.KeyAlgoSKECDSA256,
2325
}
2426

2527
// ValidateSSHKey validates authorized_keys file content

internal/utils/ssh_test.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,16 @@ func TestValidateSSHKey(t *testing.T) {
2727
sshKey: "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBAlTkxIo4mXBR+gEX0Q74BpYX4bFFHoX+8Uz7tsob8HvsnMvsEE+BW9h9XrbWX4/4ppL/o6sHbvsqNr9HcyKfdc= [email protected]",
2828
expectError: false,
2929
},
30+
{
31+
name: "valid SK-backed ED25519 key",
32+
sshKey: "[email protected] AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIHHSRVC3qISk/mOorf24au6esimA9Uu1/BkEnVKJ+4bFAAAABHNzaDo= [email protected]",
33+
expectError: false,
34+
},
35+
{
36+
name: "valid SK-backed ECDSA key",
37+
sshKey: "[email protected] AAAAInNrLWVjZHNhLXNoYTItbmlzdHAyNTZAb3BlbnNzaC5jb20AAAAIbmlzdHAyNTYAAABBBL/CFBZksvs+gJODMB9StxnkY6xRKH73npOzJBVb0UEGCPTAhDrvzW1PE5X5GDYXmZw1s7c/nS+GH0LF0OFCpwAAAAAEc3NoOg== [email protected]",
38+
expectError: false,
39+
},
3040
{
3141
name: "multiple valid keys",
3242
sshKey: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDiYUb9Fy2vlPfO+HwubnshimpVrWPoePyvyN+jPC5gWqZSycjMy6Is2vFVn7oQc72bkY0wZalspT5wUOwKtltSoLpL7vcqGL9zHVw4yjYXtPGIRd3zLpU9wdngevnepPQWTX3LvZTZfmOsrGoMDKIG+Lbmiq/STMuWYecIqMp7tUKRGS8vfAmpu6MsrN9/4UTcdWWXYWJQQn+2nCyMz28jYlWRsKtqFK6owrdZWt8WQnPN+9Upcf2ByQje+0NLnpNrnh+yd2ocuVW9wQYKAZXy7IaTfEJwd5m34sLwkqlZTaBBcmWJU+3RfpYXE763cf3rUoPIGQ8eUEBJ8IdM4vhp [email protected]\nssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBSbM8wuD5ab0nHsXaYOqaD3GLLUwmDzSk79Xi/N+H2j [email protected]",
@@ -131,6 +141,8 @@ func TestValidSSHKeyTypes(t *testing.T) {
131141
"ecdsa-sha2-nistp256",
132142
"ecdsa-sha2-nistp384",
133143
"ecdsa-sha2-nistp521",
144+
145+
134146
}
135147

136148
if len(ValidSSHKeyTypes) != len(expectedTypes) {

0 commit comments

Comments
 (0)