public static IdentityKey getIdentityKey(String privateKeyFile, String privateKeyString, String privateKeyPassphrase) { IdentityKey identityKey = null; if (StringUtilities.isNotEmpty(privateKeyFile)) { identityKey = new KeyFile(privateKeyFile); } if (StringUtilities.isNotEmpty(privateKeyString)) { if (identityKey != null) { throw new IllegalArgumentException(String.format("%s and %s inputs are mutually exclusive. They can't be both set at the same time.", Constants.PRIVATE_KEY_FILE, Constants.PRIVATE_KEY_DATA)); } identityKey = new KeyData(privateKeyString); } if (identityKey != null && StringUtilities.isNotEmpty(privateKeyPassphrase)) { identityKey.setPassPhrase(privateKeyPassphrase); } return identityKey; }
public static void setIdentity(JSch jsch, IdentityKey identityKey) throws SSHException { byte[] passPhrase = identityKey.getPassPhrase(); if (identityKey instanceof KeyFile) { try { jsch.addIdentity(((KeyFile) identityKey).getKeyFilePath(), passPhrase); } catch (JSchException e) { throw new SSHException("The keyFilePath is invalid.", e); } } else { try { jsch.addIdentity(((KeyData) identityKey).getKeyName(), ((KeyData) identityKey).getPrivateKeyData(), null, passPhrase); } catch (JSchException e) { throw new SSHException("The " + Constants.PRIVATE_KEY_DATA + " is invalid.", e); } } } }
public static void setIdentity(JSch jsch, IdentityKey identityKey) throws SSHException { byte[] passPhrase = identityKey.getPassPhrase(); if (identityKey instanceof KeyFile) { try { jsch.addIdentity(((KeyFile) identityKey).getKeyFilePath(), passPhrase); } catch (JSchException e) { throw new SSHException("The keyFilePath is invalid.", e); } } else { try { jsch.addIdentity(((KeyData) identityKey).getKeyName(), ((KeyData) identityKey).getPrivateKeyData(), null, passPhrase); } catch (JSchException e) { throw new SSHException("The " + Constants.PRIVATE_KEY_DATA + " is invalid.", e); } } } }
public static IdentityKey getIdentityKey(String privateKeyFile, String privateKeyString, String privateKeyPassphrase) { IdentityKey identityKey = null; if (StringUtilities.isNotEmpty(privateKeyFile)) { identityKey = new KeyFile(privateKeyFile); } if (StringUtilities.isNotEmpty(privateKeyString)) { if (identityKey != null) { throw new IllegalArgumentException(String.format("%s and %s inputs are mutually exclusive. They can't be both set at the same time.", Constants.PRIVATE_KEY_FILE, Constants.PRIVATE_KEY_DATA)); } identityKey = new KeyData(privateKeyString); } if (identityKey != null && StringUtilities.isNotEmpty(privateKeyPassphrase)) { identityKey.setPassPhrase(privateKeyPassphrase); } return identityKey; }