我对跨产品政策有疑问。是否可以将API限制为仅限一个Web界面/应用程序?
我有一个Web应用程序,获取数据,通常以JSON格式,通过AJAX。
当Web应用程序初始化,独特的“关键”或“令牌”从服务器通过AJAX创建并发送到客户端,作为一个平均值来识别它。每次ajax调用都会发送令牌用于验证目的。如果在两个小时内未验证,则PHP脚本将其删除,并且用户需要再次对其进行身份验证。
如果用户发送另一个Ajax呼叫(即,如果有活动与关联的令牌),令牌将其过期2小时。
每次调用,我验证令牌,然后处理请求。一切运作良好,但我的问题是安全导向。由于令牌存储在客户端(非常粗糙,如window.token = 'YTM0NZomIzI2OTsmIzM0NTueYQ==';
),恶意用户不可能检查代码,复制包括令牌在内的JavaScript
,并创建另一个可访问相同令牌的应用程序数据?
简而言之:是的。 :) – deceze 2012-02-29 00:55:53
是的,你无能为力。 – SLaks 2012-02-29 00:56:13
我不知道PHP,但是它不包含会话功能吗? – 2012-02-29 00:57:40