Uploaded image for project: 'FishEye'
  1. FishEye
  2. FE-6623

Newline characters in SSH keys are ignored when creating a repository via REST endpoint

    XMLWordPrintable

Details

    Description

      When creating a repository via /rest-service-fecru/admin/repositories POST \n characters are not processed and directly written into $FISHEYE_INST/data/auth/repo and repo.pub files instead of being replaced with actual newline characters.

      How to reproduce:

      Send an POST request to /rest-service-fecru/admin/repositories endpoint containing JSON with ssh keys provided, e.g.:

      curl -u <user>:<password> -X POST -H 'Content-Type: application/json' http://<fecru_base_url>/rest-service-fecru/admin/repositories --data-binary "$(<payload.txt)"
      
      

      where payload.txt contains:

      {
      "type":"git",
      "name":"test-repo",
      "description":"",
      "storeDiff":true,"enabled":true,"git":
      {
      "location":"git@example.com/repo",
      "path":"",
      "auth":
      {
      "authType":"key",
      "privateKey":"-----BEGIN RSA PRIVATE KEY-----\\n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\\n-----END RSA PRIVATE KEY-----",
      "publicKey":"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCtDD6WlssiJZGczIhFimfM2j1gOVnkXTRSX5mJEEC7UMcK+LMNxu9OmmPLdhUw9vtgsK7/6m4cYm6NrLORJzoZ2IlcQ9lBBl5NJuw8Z198MQi39vIBA5GWcm0TlFO2ty71UyruM33dJzkEn0u54MmOpmDLL6E0ychFkjhbzoPL3vbdFfdXoPS9NDP4/ZMyofNmXUbqukhB/B/ZL8gW1aH6QHoD0+wrlpAAAd8Xv2FMc7lrRh/J0WYFwnocIZzl+U71A5jXbJbpm2qel+EGUQx6WkEBlQF0wfqwxx6osNi98Q7n6am61pn0tZ3fGfqcLLvOHXMmH5teRkeIMJhNJdSd/ipcUGS4K2wQZWq7Y+DZvVJCQVCqmDg256c5PfvH9t8MVVCCxh1Wd6kZAFDtYKQlBsyJf4qLtly800GO8A403STASlQF4kJjUVHtQavlxWrDQTgdBXh7WVRRIAcd+ciAaBgjbn3NLpg2eMOxBnn3NersLXyh7xsnv8he145i+GjcMH+Vjlg7IIK0GMOvlopd63ahqeVnPuJ22ryYo9BRWmryCS1cu6PsfRzzx5Vzt6Jqq7hYIv1FQCZKuJUAGN6B6aBkYDwyRZN4hMF9Ib8ro8KAx3RYqGbQ98yqU93dKebSXQ2Ddftm4XjUFLPOom+WJpV6M+rY3SW8/lLoHQXsGQ=="
      },
      "renameDetection":"none"
      }
      }
      
      
      
      
      

      Expected output:

      $FISHEYE_INST/data/auth/test-repo containing private key with newlines:

      -----BEGIN RSA PRIVATE KEY-----
      MIIJKQIBAAKCAgEArQw+lpbLIiWRnMyIRYpnzNo9YDlZ5F00Ul+ZiRBAu1DHCviz
      DcbvTppjy3YVMPb7YLCu/+puHGJujayzkSc6GdiJXEPZQQZeTSbsPGdffDEIt/by
      AQORlnJtE5RTtrcu9VMq7jN93Sc5BJ9LueDJjqZgyy+hNMnIRZI4W86Dy9723RX3
      V6D0vTQz+P2TMqHzZl1G6rpIQfwf2S/IFtWh+kB6A9PsK5aQAAHfF79hTHO5a0Yf
      (...)
      -----END RSA PRIVATE KEY-----
      
      
      
      

      Actual output:

      $FISHEYE_INST/data/auth/test-repo containing private key with \n characters:

      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\n-----END RSA PRIVATE KEY-----
      
      
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              mzyromski Mikolaj Zyromski
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: