如何在js文件中隐藏PAT以将其托管在github Pages

问题描述 投票:0回答:2

我有一个简单的html页面,它与js文件连接并对gihub api进行api调用,虽然它在我的本地环境中工作得很好,但一旦我将存储库推送到github,我的github上的PAT(个人身份验证令牌)就会过期现在已向公众公开。我的 html 网页崩溃了,因为现在它没有经过身份验证,无法调用 api。我该如何解决这个问题我想在线托管我的html和js文件,但是我无法隐藏PAT,因为它是唯一的javascript而不是nodejs,所以没有dotenv。有什么办法吗??

我尝试将 API 密钥更改为 PAT,因为聊天 gpt 建议这样做,但一旦我推送到 github,它就会过期。

javascript html github github-pages github-api
2个回答
0
投票

没有安全的方法可以在静态站点(例如 GitHub Pages 上托管的站点)中存储 PAT 等机密信息。原因是你将静态站点中的所有内容发送给用户,而用户不应该拥有秘密。混淆它是不够的,因为它很容易提取。

如果您想使用 PAT 或其他机密,则需要后端服务器来安全地执行此操作,因为机密必须存储在那里。


-1
投票

我知道在网页中隐藏敏感信息是不可能的,也是完全没有必要的。但在评估中,我被告知要设置它并使用仅包含 html、css 和 JS 的 api 部署单个网页。

但是如果其他人也遇到同样的问题,他们可以将令牌分成 2 或 3 部分,然后将它们连接起来创建一个完整的令牌,此方法不会使令牌或 api 密钥过期,因为不会检测到它.

再次强调,完全不建议这样做,而且非常没有必要,因为 PAT 或 api 密钥不得公开显示。

© www.soinside.com 2019 - 2024. All rights reserved.