В документации совершенно ясно сказано, что, поскольку сценарии приложений запускаются на совместно используемых экземплярах App Engine, невозможно ограничить их использованием IP, и это также подразумевает, что сетевые возможности будут очень ограничены (т. Е. Отсутствует пиринг VPC или тому подобное). Поэтому, как и в выделенном блоке, они предлагают реализовать аутентификацию только по ограничению IP.
Помимо аутентификации, App Script также поддерживает шифрование и аутентификацию сервера с использованием SSL ( пример кода). ). Это должно защитить соединение от перехвата при отправке через Интернет.
Более того, вы можете реализовать механизм «полу IP-ограничения», технически называемый Port Knocking , который кратко работает следующим образом:
- Сначала создайте специальную конечную точку, требует аутентификации, принимает IP-адрес в качестве ввода. По запросу вы открываете брандмауэр, чтобы принять соединение с этого IP-адреса с внутренней сетью в течение ограниченного времени (например, 5 минут).
- В сценарии приложения используйте URL Fetch, чтобы запроситьконечная точка, так что вашему экземпляру сценариев временно разрешен доступ к вашей сети.
Конечно, это не будет идеальным решением, поскольку один экземпляр App Engine выполняет много сценариев одновременно, а белый список открывается в течение заданного времени. , но все же это значительно лучше, чем постоянное открытие порта для всех IP-адресов Google (App Engine).