将facebook App ID嵌入UI javascript代码中是否安全?

haj*_*ime 9 javascript facebook facebook-graph-api

Facebook的文档说我们可以通过运行以下代码在我们的应用程序中初始化FB.代码来自文档,但是这也希望'appId'作为参数传递.

问题:将'appId'嵌入单页应用程序的客户端Javascript代码中是否真的安全,还是应该以某种方式在服务器端处理?

FB.init({
    appId      : '{your-app-id}',
    status     : true,
    xfbml      : true,
    version    : 'v2.4' // or v2.0, v2.1, v2.2, v2.3
  });
Run Code Online (Sandbox Code Playgroud)

更新:正如@KK所指出的那样app-secret.所以我猜测它app-id在浏览器中是安全的,但我应该保持app-secret安全.当我检查我的Facebook仪表板时,我可以看到我有两个不同的ID app-idapp-secret.

即使我保留app-id在服务器上并通过服务器重定向用户,用户仍然可以看到app-id,因为此处文档说明重定向URL是一个GET请求,所以所有参数都是可见的.

lus*_*chn 14

App ID非常安全(无论如何都会在登录过程中显示),另一方面App Secret被称为"Secret",原因很简单.使用App ID和App Secret,您将拥有App Access Token(App-ID | App-Secret).使用App Access Token,您可以更改一些应用程序设置:https://developers.facebook.com/docs/graph-api/reference/application#Updating

要提高安全性,您应该在App设置中激活"Require App Secret"并appsecret_proof用于服务器调用: