Kerberos 身份验证

Azure DevOps Server 2020 |Azure DevOps Server 2019 |TFS 2018

如果使用Azure DevOps管理 Git 存储库,Git 可能会使用 Kerberos 协议进行身份验证。 (这不适用于使用不同形式的 authentication.) LFS 不支持 Kerberos 的 Azure DevOps Services,因此你可以收到错误,指出“用户名必须是域\user”。 从 Git LFS 版本 2.4.0 起,已添加 具有 SSPI 的 NTLM 身份验证 。 你将不再收到这些错误,身份验证将不起作用,无需额外配置。

强烈建议升级到 Git LFS 版本 2.4.0 或更高版本,无需额外配置。

如果无法升级到 2.4.0,则可以删除 Kerberos 凭据,并使用以下解决方法让 Git 选取新的 NTLM 凭据。

注意

通过 HTTP 发送的凭据将以明文形式传递。 确保为 HTTPS 配置 TFS 实例,不要将 HTTP 与 Git-LFS 配合使用。

  1. 打开 Windows 凭据管理器。 在Windows 10,可以按“开始”,然后键入“凭据管理器”。

    Open Credential Manager

  2. 选择Windows凭据

    Choose Windows Credentials

  3. 在凭据列表中查找 TFS URL。

  4. 选择“移除”。

    Choose Remove

  5. 返回到 Git 客户端 (Visual Studio或命令行) 并推送更改。 当系统提示输入凭据时,请务必在 DOMAIN\username 窗体中输入凭据。