在PHP中保护Facebook SDK密钥

时间:2018-01-18 17:22:57

标签: php facebook facebook-graph-api

我一直在阅读Facebook SDK密钥不应该在您的客户端代码中,但我找不到如何避免使用PHP SDK执行此操作的教程。

我不是一个经验丰富的开发人员,所以我很难将Facebook PHP SDK文档应用安全部分翻译成实际的文件和代码。

有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:1)

通常,您不应将API密钥等身份验证凭据硬编码到代码中。你想避免做这样的事情:

$key = 'my secret key';

考虑将此文件提交到源代码控制系统的情况。现在,您的凭据将永久存储在那里,任何对存储库具有读取权限的人都可以代表您进行API调用。

而是将凭据存储在项目的代码库之外。例如:

$key = file_get_contents('/path/to/secret/key');

确保文件/path/to/secret/key不在此项目的存储库中。现在,当您提交代码时,它不包含实际的密钥,只是对它的引用。

答案 1 :(得分:0)

PHP代码不是客户端的。即使您在客户端文件(如html)中编写它,您在<?php ?>标记内编写的PHP代码也不会发送到客户端。服务器将执行它,因此只要您的API密钥是PHP代码,客户端就无法读取它。

编辑:如果您计划将代码推送到GitHub,以便公开并且可以被所有人访问,请关注Alex Howansky的回答。