У меня есть проект Google App Engine, который предоставляет API через Google Cloud Endpoints. До сих пор все API/конечные точки использовали аутентификацию OAuth2 (и авторизацию), что отлично подходит для «реальных» пользователей.Аннотации Java для авторизации API-ключей в Google Cloud Endpoint?
Теперь я хочу выставить несколько новых API, предназначенных для использования машинами вместо пользователей. Я бы хотел, чтобы эти конечные точки использовали авторизацию API-ключа.
В облачной консоли я создал ключ API (менеджер/учетные данные API).
В Google documentation используется файл yaml для настройки авторизации API-ключа. Тем не менее, я не использую конфигурацию yaml, и она не кажется обычным для приложений Java.
Я бы ожидал, что для Java будут аннотации для авторизации с использованием API-ключей. Однако Google documentation для Java не упоминает ничего подобного.
Можно ли использовать API-ключи в приложении Java с помощью аннотаций? Есть ли другой рекомендуемый способ сделать это?
UPDATE: Кажется, что ключи API работают в Cloud Endpoints 2.0, который находится в бета-версии (ноябрь 2016 г.). Однако CE 2.0 не поддерживается плагином Google Eclipse и требует Maven (которого я сильно не люблю). У меня нет времени переписать мой проект, поэтому на данный момент я добавил дополнительный параметр api_key в свой API, который я проверяю кодом. Обратите внимание, что этот параметр нельзя назвать «ключом», потому что Cloud Endpoint подумает, что это его собственный ключ API, и ответьте, указав, что доступ не настроен.
У Google Eclipse Plugin пока нет (есть) обновление? Похоже, что он застрял в 1.9.34. Или, может быть, мне нужно сначала обновить Eclipse (все еще используя Mars 2)? – rakensi
Только новая инфраструктура поддерживает это, что не поставляется с SDK App Engine. Вам нужны com.google.endpoints, endpoints-framework артефакт. – saiyr
Спасибо, я попробую. – rakensi