【发布时间】:2018-01-02 08:49:31
【问题描述】:
我正在通过集成 api https://developer.github.com/v3/apps/ 构建 github 应用程序。
经过身份验证的用户需要能够从 github 存储库中选择文件。目前我正在通过我的后端服务器将所有请求(例如列出安装、存储库和 git 数据树)代理到 github。
我正在考虑给我的网络客户端一个github's installation token 并将其保存在sessionStorage 中。这将允许直接从 Web 浏览器临时执行对 github 的任何安装相关请求。因此,我可以通过直接从 Web 客户端调用 github api 来列出存储库/文件,而无需通过我的后端 api 进行代理。
这种方法会有任何安全问题吗?
据我所知,这样做应该是安全的,因为客户端机密和私钥保存在后端。仅向用户颁发一个令牌,该令牌临时授予对他自己的安装的 API 访问权限。我无法想象用户可以做任何恶意行为。此外,由于令牌是临时的,第三方从sessionStorage 窃取它的风险相当低。
【问题讨论】:
标签: github-api