试着用邻居的信任来思考它。
你的邻居有一把钥匙叫做Lenny,他住在你家左边的房子里,另一个住在你右边的邻居Rhonda。你已经认识了朗达几年了,她相信你保留她的钥匙的一个副本,因为她被锁定或失去了她的钥匙。
Lenny很新,但你曾与他喝酒,他似乎是一个合理的人。你不知道的是,莱尼从一个小镇搬到了这里,他并没有把门锁上。
你要离开的周末,并要求莱尼过来,给你的猫偎依一些牛奶。莱尼把你的钥匙带到你的房子里,但他不知道住在街对面的坏家伙布拉德正在看着他,并看到你早点离开。
现在兰妮离开工作,不锁他的房子。通常情况下这不是问题,因为莱尼生活在一个相当简单的孤独生活中,但是布拉德知道他有你的钥匙。布拉德窃取你的钥匙,去偷你的全新电视,而在你的房子里,他发现朗达的钥匙(他也偷了),并偷走了她的电视。他把两把钥匙放回他找到他们的地方,并用两台电视返回家中。现在,莱尼回到家,当他来浇水你的植物时,他发呆,发现电视没了,房子被锁住了。他打电话给立即怀疑Lenny的警察,因为他有钥匙。
即使你是一个善良而信任的人,不要成为Lenny,锁住你的房子(api钥匙)。
编辑:对于电子应用程序可能出错的问题。想象一下,我失去了我的Twitter API密钥。现在布拉德去做一个仿制应用程序。这与我的非常相似,如上所述,他的应用程序与Twitter从我的角度看没什么区别。也许API密钥不仅仅是发布权限,它也具有删除权限。现在,Brads knockoff应用程序可以删除用户的Twitter帐户并发布恶意软件或其他内容。布拉德是这样做的,但Twitter对我来说并指责我运行垃圾邮件机器人。他们预防性地禁用了我的API密钥,现在我所有的合法客户都非常生气,并质疑我的应用程序的其他方面的安全性。我的声誉受到影响,人们说我的应用程序“感染了”,因为这些推文显示为由我的应用程序发布,而不是Brads应用程序。如果Twitter确定你不能保证你的密钥安全,他们可能会停止向你发放新密钥。
相关:https:// stackoverflow。com/questions/45448377/how-to-secure-use-an-oauth-token-in-end-end-javascript –