只允许应用程序引擎说话或连接到计算引擎


Only allow app engine to speak or connect to compute engine

我有一个安装了apache.php的静态IP计算引擎。

我的应用程序引擎调用php脚本,就像任何正常的POST调用一样。我收到了指向我的计算引擎的随机请求,我想将计算引擎限制为只接受来自应用程序引擎的请求。

要么在PHP脚本中检查它,要么制定某种防火墙规则

我能想到的唯一方法是限制它的IP,但应用程序引擎有很多不同的IP。

你们认为最好的做法是什么?

实现这一点的方法(我已经实现并运行良好)是在GCE服务器上设置HTTP身份验证,并在请求中使用这些凭据。

我已经用nginx和apache完成了这项工作——这取决于您在GCE上运行的内容。

如果需要,您可以使用基本身份验证或摘要/HTTPS。

实际上,我用这个来利用应用引擎的Elasticsearch。

HTTPS可能是最安全的方法,因为您可以检查对方的证书,并丢弃来自除您喜欢的对方之外的任何人的请求。urlfetch可以发出https请求,事实上,出于各种可靠的安全最佳实践原因,我们鼓励他们这样做!