Answer: it depends. I understand that you are asking about client_secret or app_secret.
If you are connecting on the server side to Facebook, you are using client_secret. This is the oauth protocol authorization permission type.
If you use a client-side connection to Facebook, you do not want to enable client_secret, since your code can be decompiled, and others can access it and start interacting with facebook using your credentials. In this case, you are using the implicit grant type of the oauth protocol. Facebook does not require client secrecy in this instance, and in fact, in its security page checklist it says that you never include the client secret: https://developers.facebook.com/docs/facebook-login/security#checklist
The best (opinion), crazy for the conceptual perspective (and not nitty gritty code) that I found here: https://stormpath.com/blog/what-the-heck-is-oauth (I have no connection, as on this page).
Hope this helps, D
source share