在 public 存储库中共享 client_secret.json 有什么风险?
What is the risk of sharing the client_secret.json in a public repo?
我有一个 python 脚本,它可以将数据写入 public google 工作表文件,为了使用 google 工作表 API 我需要用户授权我的脚本。我想与其他人共享脚本,因此我也在考虑共享 client_secret.json,但我正在努力理解其中涉及的安全风险。
据我了解 OAuth2,通过提供 client_secret.json 我的脚本进行自我验证,然后用户授权脚本代表用户写入数据,对吗?
因此,我是否正确,当我共享 client_secret.json 时可能发生的最糟糕的事情是有人会利用我的服务将数据写入工作表(只有 his/her 拥有或到 public 个)通过使用我的脚本的配额?
正如用户@thehowch 所说,据我了解整个过程,共享 client_secret.json 的最主要风险是打开网络钓鱼攻击的攻击媒介,因为有人可以复制 client_secret 然后将 him/herself 呈现为可信赖的权威机构,用户可以在其中授予他们的授权,从而向攻击者打开他们的 google 驱动器。
Google 的 API 的配额使用也将在拥有 client_secret 的 google 项目帐户上注册。因此,攻击者可以通过用尽配额来阻止我们的使用。当然,与网络钓鱼攻击相比,这种风险不算什么。为了完整起见,作为一个侧节点。
我有一个 python 脚本,它可以将数据写入 public google 工作表文件,为了使用 google 工作表 API 我需要用户授权我的脚本。我想与其他人共享脚本,因此我也在考虑共享 client_secret.json,但我正在努力理解其中涉及的安全风险。
据我了解 OAuth2,通过提供 client_secret.json 我的脚本进行自我验证,然后用户授权脚本代表用户写入数据,对吗?
因此,我是否正确,当我共享 client_secret.json 时可能发生的最糟糕的事情是有人会利用我的服务将数据写入工作表(只有 his/her 拥有或到 public 个)通过使用我的脚本的配额?
正如用户@thehowch 所说,据我了解整个过程,共享 client_secret.json 的最主要风险是打开网络钓鱼攻击的攻击媒介,因为有人可以复制 client_secret 然后将 him/herself 呈现为可信赖的权威机构,用户可以在其中授予他们的授权,从而向攻击者打开他们的 google 驱动器。
Google 的 API 的配额使用也将在拥有 client_secret 的 google 项目帐户上注册。因此,攻击者可以通过用尽配额来阻止我们的使用。当然,与网络钓鱼攻击相比,这种风险不算什么。为了完整起见,作为一个侧节点。