GitLab:如何找到SSH密钥的所有者

时间:2019-01-15 03:04:43

标签: gitlab ssh-keys

给出了已在GitLab中注册的SSH公钥或指纹,我如何找出与该密钥相关联的帐户?

请注意,该密钥可能已注册为“部署密钥”,在这种情况下,我想知道注册该密钥的帐户。

我更想知道使用标准Web UI(如果可能)以及通过REST API以编程方式进行此操作的方法。如果上述两种方法都不可行,我将在必要时提供涉及挖掘GitLab内部信息的答案(例如,通过对GitLab数据库的查询)。

2 个答案:

答案 0 :(得分:1)

我看不到任何将SSH密钥指纹作为参数的公共API(例如,在User API中)。

我看到它仅用作内部 API,用于检索实际的SSH密钥:merge request 250

That code可以为您提供有关如何编写自己的搜索的线索。

答案 1 :(得分:1)

如果您可以访问postgres控制台:

root@gitlab:/# gitlab-psql
    psql (9.6.8)
    Type "help" for help.

    gitlabhq_production=#
    gitlabhq_production=# select a.name,a.username,b.fingerprint 
from users a, keys b where a.id=b.user_id;

         name      | username |                   fingerprint                   
    ---------------+----------+-------------------------------------------------
     Administrator | root     | f4:cc:ec:76:d0:1c:86:1d:45:6d:a7:6e:b3:df:32:7c
    (1 row)