summaryrefslogtreecommitdiff
path: root/lib/api
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2018-01-09 11:21:23 +0000
committerDouwe Maan <douwe@gitlab.com>2018-01-09 11:21:23 +0000
commit2e4a1b3b78a76103198180acf873de8470d7cecf (patch)
treeda0c62bfc0eb8fbc1960330d6f8b3be91d986639 /lib/api
parent639cfdc221617f13ee08e673e0b5e51efc344744 (diff)
parent9edd9a5ea21a1b95ffc7b399c5c11bc9a7c4c318 (diff)
downloadgitlab-ce-2e4a1b3b78a76103198180acf873de8470d7cecf.tar.gz
Merge branch 'jej/backport-authorized-keys-to-ce' into 'master'
Backport authorized_keys Closes gitlab-ee#3953 See merge request gitlab-org/gitlab-ce!16014
Diffstat (limited to 'lib/api')
-rw-r--r--lib/api/internal.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/api/internal.rb b/lib/api/internal.rb
index 79b302aae70..8bf53939751 100644
--- a/lib/api/internal.rb
+++ b/lib/api/internal.rb
@@ -82,6 +82,18 @@ module API
end
#
+ # Get a ssh key using the fingerprint
+ #
+ get "/authorized_keys" do
+ fingerprint = params.fetch(:fingerprint) do
+ Gitlab::InsecureKeyFingerprint.new(params.fetch(:key)).fingerprint
+ end
+ key = Key.find_by(fingerprint: fingerprint)
+ not_found!("Key") if key.nil?
+ present key, with: Entities::SSHKey
+ end
+
+ #
# Discover user by ssh key or user id
#
get "/discover" do