如何保护Azure DevOps存储库

时间:2019-04-27 23:41:22

标签: git azure

可以克隆在Azure DevOps中创建的新存储库,而无需提示输入密码或安全令牌。例如,创建存储库后,可以使用以下命令从命令行克隆存储库:
https://username@dev.azure.com/organization-name/project-name/_git/repo-name

克隆存储库之前,没有提示在桌面命令行上进行身份验证。我担心的是,任何人都可以猜测URL字符串并尝试克隆私有存储库。

选择克隆存储库时,我已经创建了密码,还创建了个人访问令牌,但是在命令行上仍然没有任何安全提示。

保护Azure DevOps存储库的正确方法是什么?

2 个答案:

答案 0 :(得分:0)

Azure DevOps与大多数Git托管站点一样,提供公共和私有存储库。具有URL的任何人都可以访问公共存储库;私有存储库将需要身份验证。

如果没有看到任何身份验证提示,则说明您的存储库可能是公开的。如果是这样,并且您不希望这样做,则可以在Web界面中查看存储库概述,单击名称旁边的铅笔图标,然后将可见性设置为private。

存储库也可能已经是私有的,但是您已在Git凭证管理器中存储了凭证,这些凭证使您可以访问存储库,因此不会提示您。在Git Bash提示符下,您可以运行GIT_TRACE=1 GIT_CURL_VERBOSE=1 git clone URL,然后查看是否包含Authorization标头。如果是这样,您可能还会看到对git credential fill的调用,以填充凭证存储中的凭证。在这种情况下,无需担心,因为需要身份验证,但是您已获得授权。

答案 1 :(得分:0)

如果您的存储库为actually private,但是您没有任何凭据提示,请检查以下内容的输出:

git config credential.helper

例如,在Windows上,该名称为your Windows Credentials Manager
在MacOS上,该would be your OSX KeyChain

如果“ dev.azure.com”存储在这些凭证帮助器之一中,这将说明克隆专用存储库时缺少提示。