Безопасность ApiKey в различных версиях развертываний конечных точек - PullRequest
2 голосов
/ 02 апреля 2019

Некоторый контекст: у нас есть приложение фляги, работающее на kubernetes (GKE). Мы используем конечные точки облака Google для управления доступом и управлением ключами к нашему API. Мы создаем документацию через flask-restplus и используем ее для настройки наших конечных точек. Важно иметь в виду, что наша документация по пользовательскому интерфейсу swagger должна быть доступна без ApiKey, поэтому мы устанавливаем «x-google-allow»: «all» в нашей конфигурации конечных точек. Все вышеперечисленные работы.

Проблема: мы хотим развернуть существенное изменение в нашем API, поэтому мы выбрали новую версию , описанную здесь . Это означает новый базовый путь. Таким образом, мы создаем 2 файла конфигурации конечных точек, один с базовым путем / api / 1 / и один с / api / 2, оба имеют одинаковый хост и флаг "x-google-allow": "all".

Развертывание с 2 конфигами работает, но доступен только пользовательский интерфейс версии 2 (/ api / 2 / doc /). Если мы хотим получить доступ к документации более старой версии (/ api / 1 / doc /), нам нужен ключ API (а затем он возвращает пустой экран). Если мы размещаем одно и то же приложение фляги локально, мы можем получить доступ к обеим страницам документации. Нам нужна документация обеих версий (у нас есть другие стороны, использующие наши API)

Я попытался изменить «x-google-allow»: «all», а затем добавить путь к странице / doc с помощью «security»: [] в конфигурации конечных точек, но проблема сохраняется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...