def sshkey(self, sshpubkey=None):
http_method = cherrypy.request.method.upper()
if cherrypy.session.get('auth', False):
user = cherrypy.session['user']
if http_method == 'POST':
try:
newkey = SSHKey(sshpubkey)
user.add_key(newkey.key)
return {
'ok': True,
'fingerprint': newkey.fingerprint,
'comment': newkey.comment
}
except UserModelException:
return {'ok': False}
except InvalidKey:
return {
'ok': False,
'error': 'Not a valid SSH Public Key!'
}
else:
return {'ok': False}
if http_method == 'DELETE':
try:
user.delete_key(sshpubkey)
return {'ok': True}
except UserModelException:
return {'ok': False}
if http_method == 'GET':
return user.sshPublicKey
else:
raise cherrypy.HTTPError(403)
评论列表
文章目录