projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' into 2895-no-more-redis
[arvados.git]
/
services
/
api
/
app
/
models
/
authorized_key.rb
diff --git
a/services/api/app/models/authorized_key.rb
b/services/api/app/models/authorized_key.rb
index 14db0b112668a036b9e4454c44de78d8038a922f..5856e0c8e8d9a6a2c0b7e0edb9c01e782b3dfc77 100644
(file)
--- a/
services/api/app/models/authorized_key.rb
+++ b/
services/api/app/models/authorized_key.rb
@@
-1,5
+1,5
@@
class AuthorizedKey < ArvadosModel
class AuthorizedKey < ArvadosModel
- include
Assign
Uuid
+ include
Has
Uuid
include KindAndEtag
include CommonApiTemplate
before_create :permission_to_set_authorized_user_uuid
include KindAndEtag
include CommonApiTemplate
before_create :permission_to_set_authorized_user_uuid
@@
-33,10
+33,10
@@
class AuthorizedKey < ArvadosModel
def public_key_must_be_unique
if self.public_key
def public_key_must_be_unique
if self.public_key
- key = /
ssh-rsa [A-Za-z0-9+\/]+
/.match(self.public_key)
+ key = /
^ssh-(rsa|dss) [A-Za-z0-9+\/=\+]+\b
/.match(self.public_key)
if not key
if not key
- errors.add(:public_key, "does not appear to be a valid ssh-rsa key")
+ errors.add(:public_key, "does not appear to be a valid ssh-rsa
or dsa public
key")
else
# Valid if no other rows have this public key
if self.class.where('public_key like ?', "%#{key[0]}%").any?
else
# Valid if no other rows have this public key
if self.class.where('public_key like ?', "%#{key[0]}%").any?