You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2017/11/01 21:51:54 UTC

[airavata] branch AIRAVATA-2500 updated: AIRAVATA-2500 Trim public key before storing in LDAP

This is an automated email from the ASF dual-hosted git repository.

machristie pushed a commit to branch AIRAVATA-2500
in repository https://gitbox.apache.org/repos/asf/airavata.git


The following commit(s) were added to refs/heads/AIRAVATA-2500 by this push:
     new 5e7e5c5  AIRAVATA-2500 Trim public key before storing in LDAP
5e7e5c5 is described below

commit 5e7e5c564f616f49c60f30825b7b37292e5c3617
Author: Marcus Christie <ma...@apache.org>
AuthorDate: Wed Nov 1 17:51:28 2017 -0400

    AIRAVATA-2500 Trim public key before storing in LDAP
---
 .../provisioner/IULdapSSHAccountProvisioner.java                    | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/modules/compute-account-provisioning/src/main/java/org/apache/airavata/accountprovisioning/provisioner/IULdapSSHAccountProvisioner.java b/modules/compute-account-provisioning/src/main/java/org/apache/airavata/accountprovisioning/provisioner/IULdapSSHAccountProvisioner.java
index 8e717c3..e35c118 100644
--- a/modules/compute-account-provisioning/src/main/java/org/apache/airavata/accountprovisioning/provisioner/IULdapSSHAccountProvisioner.java
+++ b/modules/compute-account-provisioning/src/main/java/org/apache/airavata/accountprovisioning/provisioner/IULdapSSHAccountProvisioner.java
@@ -84,6 +84,7 @@ public class IULdapSSHAccountProvisioner implements SSHAccountProvisioner  {
     @Override
     public String installSSHKey(String userId, String sshPublicKey) throws InvalidUsernameException {
         String username = getUsername(userId);
+        String finalSSHPublicKey = sshPublicKey.trim();
         boolean success = withLdapConnection(ldapConnection -> {
             try {
                 String dn = "uid=" + username + "," + ldapBaseDN;
@@ -101,11 +102,12 @@ public class IULdapSSHAccountProvisioner implements SSHAccountProvisioner  {
                 if (!hasLdapPublicKey) {
 
                     modifyRequest.addModification(new DefaultAttribute("objectclass", LDAP_PUBLIC_KEY_OBJECT_CLASS), ModificationOperation.ADD_ATTRIBUTE);
-                    modifyRequest.addModification(new DefaultAttribute(SSH_PUBLIC_KEY_ATTRIBUTE_NAME, sshPublicKey), ModificationOperation.ADD_ATTRIBUTE);
+                    modifyRequest.addModification(new DefaultAttribute(SSH_PUBLIC_KEY_ATTRIBUTE_NAME, finalSSHPublicKey),
+                            ModificationOperation.ADD_ATTRIBUTE);
                 } else {
 
                     String oldSshPublicKey = entry.get(SSH_PUBLIC_KEY_ATTRIBUTE_NAME).getString();
-                    if (!oldSshPublicKey.equals(sshPublicKey)) {
+                    if (!oldSshPublicKey.equals(finalSSHPublicKey)) {
                         // Disallow overwriting the SSH key
                         throw new RuntimeException("User [" + username + "] already has an SSH public key in LDAP for ["
                                 + ldapBaseDN + "] and overwriting it isn't allowed.");

-- 
To stop receiving notification emails like this one, please contact
['"commits@airavata.apache.org" <co...@airavata.apache.org>'].