예제 #1
0
def validate_ssh_auth(value):
    """Validate SSH Public Keys but allow comments."""
    value = value.strip()
    for ssh_pubkey in value.splitlines():
        if not ssh_pubkey.lstrip().startswith('#'): # ignore comments
            validate_ssh_pubkey(ssh_pubkey)
    return value
예제 #2
0
 def test_validate_ssh_pubkey(self):
     pubkey = ('ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCsHDcbPXptz4i6iz2EGif'
               'D8JZ3acFnR6FG6aPDQxmoESLjNw6n6MoVOkeXvs+Phgra30dQLnLa23pFCb'
               'vYxrX5HY370Dtx2981uz0RFws+85pBviIIsdnma/Wzz05PDhTb3vnTGUOp+'
               'xOKRl6xptiESbz+Jgi1ImCkx85rBCWj9jQQNi0hddkBi41F/UzMLorWGICa'
               'yC/wGvg7JDnYhlKv+HXSYoylQvnrY/891mR6BNBYU+N1506VndHLz0VDWii'
               'bxwM2vkpy6h+/dt2OLsMXzuDSSUpqYynwYXPC6PaCzzrv18qBTUzT9dof0x'
               'o6Nib+clykex/C7FnIaFD4HW9N')
     pubkey_with_comment = pubkey + ' confine@confine'
     validate_ssh_pubkey(pubkey)
     validate_ssh_pubkey(pubkey_with_comment)
     self.assertRaises(ValidationError, validate_ssh_pubkey, 'ssh-rsa FooPubKey')
예제 #3
0
 def test_validate_ssh_pubkey(self):
     pubkey = ('ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCsHDcbPXptz4i6iz2EGif'
               'D8JZ3acFnR6FG6aPDQxmoESLjNw6n6MoVOkeXvs+Phgra30dQLnLa23pFCb'
               'vYxrX5HY370Dtx2981uz0RFws+85pBviIIsdnma/Wzz05PDhTb3vnTGUOp+'
               'xOKRl6xptiESbz+Jgi1ImCkx85rBCWj9jQQNi0hddkBi41F/UzMLorWGICa'
               'yC/wGvg7JDnYhlKv+HXSYoylQvnrY/891mR6BNBYU+N1506VndHLz0VDWii'
               'bxwM2vkpy6h+/dt2OLsMXzuDSSUpqYynwYXPC6PaCzzrv18qBTUzT9dof0x'
               'o6Nib+clykex/C7FnIaFD4HW9N')
     pubkey_with_comment = pubkey + ' confine@confine'
     validate_ssh_pubkey(pubkey)
     validate_ssh_pubkey(pubkey_with_comment)
     self.assertRaises(ValidationError, validate_ssh_pubkey,
                       'ssh-rsa FooPubKey')
예제 #4
0
 def clean_ssh_auth(self):
     ssh_auth = self.cleaned_data.get("ssh_auth").strip()
     for ssh_pubkey in ssh_auth.splitlines():
         if not ssh_pubkey.lstrip().startswith('#'): # ignore comments
             validate_ssh_pubkey(ssh_pubkey)
     return ssh_auth