首页 > 解决方案 > 永久链接到 Github 私人仓库中的原始文件

问题描述

好的,所以我在这里的其他几个地方都看到了类似的问题,但是其中许多已经存在多年,并且没有看到任何令人满意的答案。Github 原始文件 - 我可以获得永久链接吗?通过 access_token 在 Github 上的 Private Repo 中读取文件的原始内容

首先让我提供我的用例,因为我对替代解决方案持开放态度。

我需要能够在融合中链接/显示作为私有 github 存储库一部分的降价文件(.md)。Markdown from url当给它一个原始 url 时,这在技术上确实可以使用 confluence 插件,例如raw/repo/readme.md?token=XXXXXXX. 问题是通过查看原始链接生成的令牌仅在 7 天内有效,因此这对于文档来说实际上不起作用,因为显然一周后文档的一部分将不再可见。正如上面的链接之一和通过谷歌搜索在线的其他几个地方所引用的,我看到声称应该可以生成个人访问令牌并替换令牌,即raw/repo/readme.md?token=PERSONAL_ACCESS_TOKEN但我还没有发现这种情况。即使在 github 中授予您的 PAT 的所有权限时,尝试在浏览器中或通过 confluence 插件访问 url 时仍然会导致 404。

此外,我还看到了一个带有类似用户名的示例,raw/repo/readme.md?login=USERNAME&token=PERSONAL_ACCESS_TOKEN但这与接收 404 的结果相同。

所以问题是有谁知道如何使用 PAT 或类似的安全替代方案成功地完成这项工作?我错过了一个会让它开心的 url 选项吗?

请注意,我不是在寻找替代的 confluence 插件来实现这一点,我知道有几个,但由于组织安全问题,在我的情况下,这些并不是真正的选择。

感谢您的任何想法

标签: gitauthenticationgithub

解决方案


如您所见,所有指向私有 GitHub 存储库的原始链接都需要一个令牌,该令牌会在一段时间后过期。这是因为如果一个 URL 被暴露,暴露的影响是有限的。您正在使用的 URL 中的令牌特定于您的用户,如果它是永久性的,那么即使他们离开了组织,将来也可以使用该令牌并访问该文件。我相信,IIRC,令牌也特定于有问题的 URL。

所以没有办法在 URL 中使用令牌来做到这一点。Authorization但是,如果您的插件支持,您可以使用基本身份验证在标头中使用个人访问令牌。我已经测试过并且确实有效,当然它不会将您的令牌暴露给每个用户。但是,它确实需要您正在使用的站点代理请求并支持该请求。

您可能希望使用与您的组织关联的机器或机器人帐户的 PAT,以便在您离开时,链接继续有效。


推荐阅读