2015-11-06 38 views
2

例如,我修改了用于点击FB API的boiler-plate代码,以符合jslint。它看起来像这样:有没有办法隐藏我的Facebook appID?

(function() { 
    'use strict'; 
    window.fbAsyncInit = function() { 
     FB.init({ 
      appId: '1507519942878500', 
      xfbml: true, 
      version: 'v2.5' 
     }); 
    }; 
    var d = document, 
     id = 'facebook-jssdk', 
     js, 
     fjs = d.getElementsByTagName('script')[0]; 
    if (d.getElementById(id)) { 
     return; 
    } 
    js = d.createElement('script'); 
    js.id = id; 
    js.src = "//connect.facebook.net/en_US/sdk.js"; 
    fjs.parentNode.insertBefore(js, fjs); 
}()); 

</script> 

我注意到,任何人谁使用我的应用程序现在可以看到我的appId。这是否有任何安全风险?

+0

这是一个前端安全问题,网上有无数的争论。由于我们正在处理JavaScript,因此我建议阅读与隐藏脚本内容相关的文章。请记住,前端语言无法完全无法访问任何内容。但是,您可以增加安全性来阻止黑客入侵。 –

回答

0

如果问题是“这是否有安全风险?”答案是肯定的,这在很多方面都会带来安全风险,但长话短说,你应该检查一下。它的最佳做法与fb sdk。

http://www.masteringapi.com/tutorials/facebook-javascript-sdk-best-practices/58/

以供将来参考您从任何API,您正在尝试使用使用任何API密钥应该从公众隐藏并保存为一个变量。如果你使用git,你会保存你的api密钥在gitignore中的文件。

2

这是故意没有风险,没有办法隐藏您的Facebook应用程序ID。

如果你的秘密被揭露,这将是一个问题。

需要有一种方法让Facebook链接回您的应用程序。 作为用户,如果我需要报告可疑活动,我还需要知道您的应用ID。

相关问题