小编Yoh*_*oho的帖子

在 React 中嵌入 GitHub Secret 并部署到 GitHub 页面泄露了我的个人访问令牌

我的目标:我的 React 应用程序有一个环境变量来存储 Github Personal_Access_Token(稍后在 HTTP 标头中用于获取),然后我稍后将使用 Action Workflow 将应用程序部署到 Github 页面。

我尝试过的:鉴于将令牌作为纯文本推送/公开到 Githut 是一种违规行为,我将使用 Github 秘密来避免这种情况。我找到了这篇文章,并尝试实施 Github 工作流程来访问秘密,然后进行部署。

- name: Install and Build 
  run: |
      npm install
      npm run-script build
  env:
      REACT_APP_GITHUB_ACCESS_TOKEN: ${{ secrets.REACT_APP_GITHUB_ACCESS_TOKEN }} // this is what I need


- name: Deploy 
  uses: JamesIves/github-pages-deploy-action@3.5.5
  with:
     GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
     BRANCH: gh-pages
     FOLDER: build
Run Code Online (Sandbox Code Playgroud)

问题: 工作流程成功运行后,我发现令牌被 GitHub 自动撤销,因为它显示在 中build/static/js/xxxx.chunk.js,并推送到 gh-page 分支:

{headers:{Authorization:"token ac4455aXXXXXXXXXXXXXXXXXXXf80512f3e"}}
Run Code Online (Sandbox Code Playgroud)

这不是我所期望的,但我知道秘密在构建过程中被访问和嵌入,并被放入静态构建文件夹中。

有人可以给我指出方向吗,我在工作流程中做错了什么吗?或者工作流程从来就不是我的问题的解决方案,我不应该使用 GitHub 页面来托管使用秘密令牌的纯 React 应用程序?
提前致谢。

github github-pages reactjs create-react-app github-actions

0
推荐指数
1
解决办法
2731
查看次数