def clean_private_key_file(self): if self.cleaned_data.get('private_key_file'): key_string = self.cleaned_data['private_key_file'].read() self.cleaned_data['private_key_file'].seek(0) if not validate_ssh_private_key(key_string): raise forms.ValidationError(_('Invalid private key')) return self.cleaned_data['private_key_file']
def validate_private_key(self, private_key): if not private_key: return password = self.initial_data.get("password") valid = validate_ssh_private_key(private_key, password) if not valid: raise serializers.ValidationError(_("private key invalid")) return private_key
def clean_private_key_file(self): if self.data['auth_method'] == 'K' and self.cleaned_data[ 'private_key_file']: key_string = self.cleaned_data['private_key_file'].read() self.cleaned_data['private_key_file'].seek(0) if not validate_ssh_private_key(key_string): raise forms.ValidationError(_('Invalid private key')) return self.cleaned_data['private_key_file']
def clean_private_key_file(self): private_key_file = self.cleaned_data['private_key_file'] if private_key_file: private_key = private_key_file.read() if not validate_ssh_private_key(private_key): raise forms.ValidationError(_('Invalid private key')) return private_key return private_key_file
def clean_private_key_file(self): private_key_file = self.cleaned_data['private_key_file'] password = self.cleaned_data['password'] if private_key_file: key_string = private_key_file.read() private_key_file.seek(0) if not validate_ssh_private_key(key_string, password): raise forms.ValidationError(_('Invalid private key')) return private_key_file
def validate_private_key(self, private_key): if not private_key: return if 'OPENSSH' in private_key: msg = _("Not support openssh format key, using " "ssh-keygen -t rsa -m pem to generate") raise serializers.ValidationError(msg) password = self.initial_data.get("password") valid = validate_ssh_private_key(private_key, password) if not valid: raise serializers.ValidationError(_("private key invalid")) return private_key
def clean_private_key_file(self): private_key_file = self.cleaned_data['private_key_file'] password = self.cleaned_data['password'] if private_key_file: key_string = private_key_file.read() private_key_file.seek(0) key_string = key_string.decode() if not validate_ssh_private_key(key_string, password): msg = _('Invalid private key, Only support ' 'RSA/DSA format key') raise forms.ValidationError(msg) return private_key_file
def validate_private_key(self, private_key): if not private_key: return passphrase = self.initial_data.get('passphrase') valid = validate_ssh_private_key(private_key, password=passphrase) if not valid: raise serializers.ValidationError( _("private key invalid or passphrase error")) private_key = ssh_private_key_gen(private_key, password=passphrase) string_io = StringIO() private_key.write_private_key(string_io) private_key = string_io.getvalue() return private_key
def private_key_validator(value): if not validate_ssh_private_key(value): raise ValidationError( _('%(value)s is not an even number'), params={'value': value}, )