GithubApp:在Web客户端上存储安装令牌是个好主意吗?

时间:2018-01-02 08:49:32

标签: github-api

我通过集成api https://developer.github.com/v3/apps/构建github应用程序。

经过身份验证的用户需要能够从github存储库中选择文件。目前,我通过我的后端服务器将所有请求(例如列出安装,存储库和git数据树)代理到github。

我考虑给我的网络客户端github's installation token并将其保存在sessionStorage中。这将允许直接从Web浏览器临时执行与github的任何安装相关请求。因此,我可以通过直接从Web客户端调用github api来列出存储库/文件,而无需通过我的后端api进行代理。

这种方法会出现任何安全问题吗?

根据我的理解,这样做应该是安全的,因为客户端密钥和私钥保留在后端。仅向用户发出一个令牌,该令牌临时授予对其自身安装的API访问权限。我无法想象用户可以做的任何恶意行为。此外,因为令牌是暂时的,第三方可以从sessionStorage窃取它的风险相当低。

1 个答案:

答案 0 :(得分:0)

我已将GitHub安装访问令牌用于多个应用程序。只要pem文件和应用程序ID在安全的位置,我就不会看到任何安全问题。生成令牌是一个分步骤的过程(根据我的记忆,该过程为3步),因此,如果您没有适当的权限访问存储库,则存在一定的错误范围。