У меня есть полнофункциональная конечная точка, которая будет получать POST-запрос от подписки PubSub при обнаружении изменений в почтовом ящике Gmail пользователя. Внутри конечной точки я могу успешно извлечь все, что мне нужно для моих целей.
Проблема в том, что я понятия не имею, кто на самом деле попадает в мою конечную точку. Злоумышленник может просто передать мне ту же полезную нагрузку, что и Gmail.
Есть ли способ убедиться, что полезная нагрузка, которую я получаю, действительно получена от Google/Gmail/PubSub?
Со стороны Gmail: кажется, что полезная нагрузка, отправляемая на мою конечную точку, не может быть изменена и всегда будет иметь форму, описанную здесь: https://developers.google.com/gmail/api/guides/push
На стороне PubSub: вы можете создать свою собственную тему и добавить к ней пары ключ/значение в качестве настраиваемых атрибутов, но, похоже, я не смогу изменить полезную нагрузку, которую Gmail публикует в моей теме. https://cloud.google.com/pubsub/docs/publisher
Любое понимание было бы очень признательно, спасибо!