Я пытаюсь заблокировать API Cloud Endpoints, так что только мое приложение для Android может его использовать, однако я не хочу использовать Oauth2 + учетные записи Google что. Причина в том, что я не хочу, чтобы мои пользователи имели учетную запись google для входа в приложение. Например, Snapchat использует Google App Engine, но не требует, чтобы у вас была электронная почта Google, чтобы использовать свое приложение - вы просто создаете собственное имя пользователя и пароль.Заблокировать API конечных точек для работы с конкретным Android-приложением
Я прочитал несколько постов, предлагающих предложения:
How do I restrict Google App Engine Endpoints API access to only my Android applications?
Authenticate my "app" to Google Cloud Endpoints not a "user"
How do I protect my API that was built using Google Cloud Endpoints?
Но не смогли найти удовлетворительный ответ. Из всего, что я читал, я рассматривал возможность наличия параметра «токена» для всех моих API-интерфейсов Cloud Endpoints API, который представляет собой только мою собственную случайную строку длиной 64 символа. На стороне сервера я бы сравнил прошедшую строку в токене с тем, что хранится на сервере в коде сервера. Если они совпадают, бинго! у вас есть доступ для запуска этого метода. Если они этого не сделают, вы получите сообщение об ошибке.
Потенциальная проблема с вышеуказанным подходом заключается в том, что кто-то может попытаться декомпилировать мой APK, получить этот токен, хранящийся в тексте боли внутри моего кода Android, а затем сделать вызовы в моем API.
Я читал, что parse.com также потенциально имеет эту проблему, где их специальный токен может быть декомпилирован в APK. Они решают эту проблему, предлагая ACL (access control lists).
Но я действительно хочу использовать Google Cloud Endpoints, а не Parse. Прямо сейчас, это ограничение наличия учетной записи Google действительно раздражает ... Есть ли способ обойти это, что люди нашли?
Seen, что ссылка, но она устарела ... «Мобильный бэкенд стартер образец приложения больше не доступный." --- Кроме того, что вы имеете в виду, чтобы создать свой API для приема приложений, подписанных с помощью определенного ключа? Можете ли вы привести пример этого с помощью Cloud Endpoints? – user5203552
Вы должны найти зеркало «Мобильный образец бэкэнда стартера», я видел как минимум два. Все есть. –