0

Я пытаюсь заблокировать 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 действительно раздражает ... Есть ли способ обойти это, что люди нашли?

ответ

0

Создайте свой API только для приложений, подписанных определенным ключом.

Я считаю, что этот пример показал, как его не реализован https://cloud.google.com/cloud/samples/mbs Сво не жизнеспособны с этой ссылкой, но существуют различные зеркала на интернете

+0

Seen, что ссылка, но она устарела ... «Мобильный бэкенд стартер образец приложения больше не доступный." --- Кроме того, что вы имеете в виду, чтобы создать свой API для приема приложений, подписанных с помощью определенного ключа? Можете ли вы привести пример этого с помощью Cloud Endpoints? – user5203552

+0

Вы должны найти зеркало «Мобильный образец бэкэнда стартера», я видел как минимум два. Все есть. –

Смежные вопросы