Авторизация: ApiKey, учётные данные или OAuth 2.0

Решение GeoPard использует AWS Cognitoarrow-up-right для процедуры аутентификации.

Рекомендуется проверить все варианты авторизации. Выбор зависит от конкретного случая использования. Более подробное описание использования приведено для каждого варианта ниже.

Вариант 1: Использование учетных данных

Авторизация с помощью «имени пользователя» и «пароля» — один из возможных подходов. В этом случае регистрация должна происходить по электронной почте (не через социальные сети).

circle-info

Подход рекомендован для интеграции на уровне API (BackEnd) и все запросы к GeoPard API проксируются через специальный выделенный сервис (микросервис).

Запрос на вход

curl --location --request POST 'https://api.geopard.tech/login' \
--header 'Content-Type: application/json' \
--header 'Content-Type: text/plain' \
--data-raw '{"username":"<email_address>","password":"<password>"}'

Ответ на вход

triangle-exclamation
{
    "token": "<token_to_use_in_geopard_api>"
}

Вариант 2: OAuth 2.0

AWS Cognito поддерживает протокол OAuth 2.0 для авторизации. Общий обзор описан в статье Руководство Cognito по OAuth2arrow-up-right, подраздел Authorization Code Grant наиболее интересен в случае GeoPard.

circle-info

Подход рекомендуется интегрировать GeoPard на уровне пользовательского интерфейса (FrontEnd). Интеграция работает в обоих направлениях для отправки/получения данных в/из GeoPard.

Кратко:

  1. Ваше приложение должно перенаправить пользователя в GeoPard Cognito для входа или регистрации.

Пример:

Пожалуйста, свяжитесь с командой GeoPard, чтобы получить индивидуальный для вашего приложения client_id.

  1. Перенаправленный URL получит проверочный код для следующего шага.

Перенаправленный URL выглядит так http://localhost:8080/?code=eb10956a-6d51-49e5-bbfe-9815e3fdc70a&state=54321arrow-up-right.

  1. Ваше приложение должно обменять код для токены (access_token, refresh_token, id_token).

Пример:

Вариант 3: API-ключ

Быстрый доступ к WMS и WFS периодически необходим. Поэтому можно использовать API-ключ GeoPard, автоматически генерируемый для каждого аккаунта.

API-ключ можно найти в apiKey атрибуте сущности GraphQL "UserData". Инструкции по получению apiKey предоставлены ЗДЕСЬ.

triangle-exclamation

Использование:

  1. В качестве geopardApiKey параметра в URL GET-запроса.

  2. В качестве заголовка X-API-Key в ЛЮБОМ запросе.

Последнее обновление

Это было полезно?