使用Javascript调用与应用程序名称和应用程序密码一个REST API - 如何保护它(Ja

2019-09-18 22:30发布

我相信这个问题已经被问了很多时间。

但想重新确认我的怀疑,并得到一些提示。

我正打算玩弄buddy.com后端的服务。 我看到大部分的REST API的需要,如果你正在使用JavaScript应用程序名和密码将被嵌入。 他们没有为JavaScript任何文件,但。 但是,想知道如果我要开始使用正常的HTML或HTML5 Web应用程序现在使用它从Javascript。 我如何使用它。

我不想通过应用程序密码的明文为任何人都可以做浏览器的查看源文件或可以运行小提琴手,看看是怎么被调用。 我知道一旦会说,嘿,你为什么不使用令牌系统有效的特定时间。

但我的消费者在这里,我怎么能保护密码为看到在浏览器的查看源文件,因为我将呼吁通过在网页/应用程序的Java脚本的API。

buddy.com API的典型例子

http://webservice.buddyplatform.com/Service/v1/BuddyService.ashx?Pictures_ProfilePhoto_Add&BuddyApplicationName= &BuddyApplicationPassword =&UserToken =&bytesFullPhotoData =&ApplicationTag =&RESERVED =

任何提示将非常感谢。 谢谢

Answer 1:

JavaScript的客户端运行总是可以用的GreaseMonkey修改。 所有变量可以用JavaScript调试器等读取萤火虫 。 所有请求可以截获并与经修饰tamperdata 。

其结果是,你永远不能信任的JavaScript,因为它的客户端代码。 为了保守秘密,从攻击,你需要保持它从JavaScript。 你可以用一个中介API,它知道的秘密,执行代表客户的要求做到这一点。 这个API需要强制认证,或谁有权访问给定资源。



文章来源: Javascript Calling a Rest API with App Name and App Password - How Can i Secure it