1

当我在用户名字段和密码字段中使用我的 PAT(个人访问令牌)时,代码已成功推送。

对用户名和密码都使用 PAT 是 Github 中的问题还是隐藏功能?

PS:出于某些原因,我很想使用这种方法,因为我使用了多个无法在系统配置中添加的 Github 帐户。但担心是否会花费安全措施。

编辑1:

使用 PAT 时,用户名字段会被忽略。通过提供错误的用户名和正确的 PAT 进行测试。有效。

有人可以解释为什么有人会以这种方式实现一个功能吗?

4

1 回答 1

1

GitHub 有意允许您在用户名字段和密码字段中放置令牌,因为有时人们会这样做,让它工作起来很好。令牌本身足以识别您并授予访问权限,因此严格不需要用户名(并且,如果提供了令牌,则忽略)。实际上,您也可以使用任何密码在用户名中指定令牌。

但是,您应该始终将其放在密码字段中的原因有几个:

  • 许多程序不会将用户名视为机密,并且会在任何地方打印它们,这意味着您的令牌突然出现在您的屏幕或日志中。如果您在咖啡店或机场,或者您有公开可见的日志,这不是很好。程序通常对密码更加小心。
  • 具体来说,凭证助手通常以可见的方式存储用户名,或者在某些情况下未加密,而密码是安全存储的。
  • 如果您在用户名字段中指定您的用户名,那么您可以按照 Git 常见问题解答中概述的过程来调整所使用的帐户,只需更改 URL 中的用户名即可。如果您在用户名中使用令牌,那么这将起作用,但这意味着您的令牌以明文形式写入配置文件中,您希望避免这种情况,并且您必须更新每个存储库以更改 URL如果您的令牌需要更新,与用户名不同。

因此,我不会将其归类为问题或隐藏功能。这样做是有意的,但由于许多其他程序对用户名的安全性不那么挑剔,因此最好避免使用它。

于 2021-10-07T21:39:34.250 回答