Ошибка 401 Unauthorized при получении OAuth токена для REST API

Добрый день!
Развернул приложение с Frontend UI по инструкции: https://doc.cuba-platform.com/frontend/cuba-frontend-docs/v20.1/overview/index.html
Создал новую роль с Область видимости = REST, выдал полные права + права на вход пользователю admin. После запуска оба приложения (называются am и am-front) работают по указанным адресам по умолчанию на порту 8080 и пускают под стандартным логином admin/admin:

image

В web-app.properties указал id и пароль client и {noop}secret (у меня CUBA версии 7.2)
image

и Frontend-модуль подключается и работает, если в .env.development.local указать этот логин и пароль:
image

Затем пытаюсь получить OAuth токен для работы с REST API по следующей инструкции: https://doc.cuba-platform.com/restapi-7.2-ru/#rest_api_v2_usage_example
где указано, что необходимо выполнить POST-запрос по адресу: http://localhost:8080/app/rest/v2/oauth/token

Но получаю ошибку 401 Unauthorized.

Использую Postman. Параметры следующие:
image
image
image
Y2xpZW50OnNlY3JldA== это строка client:secret в Base64 (всё по документации)
image
image

Подскажите, пожалуйста, какие параметры необходимо указать, чтобы получить OAuth токен? Вроде бы всё делаю по инструкции, но во всех случаях получаю ошибку авторизации. Хотя под этим же пользователем admin и с теми же client:secret могу зайти через Frontend UI.

Через curl, кстати, тоже не работает (просто ничего не выдаёт в ответе):
image

Может быть каких-то параметров не хватает?
Заранее спасибо.

Использую версию Cuba Platform 7.2.13.

Добрый день,
Посмотрите в журнал приложения.
При ошибке логина там обязана появиться строчка с сообщением, что не так. Или пароль не подошел, или у пользователя все-таки нет прав на использование REST API. Или еще что-то.

Добрый день, Александр
Вы имеете в виду лог catalina.out? Туда пишется лог только если я логинюсь под admin во Frontend UI (и даже видно, что токен выдался корректно):
image

Но если я пытаюсь получить его через Postman, то в catalina.out ничего не записывается. В папке C:\Users\kharchenkov.a\StudioProjects\am_portal\deploy\tomcat\logs в файле localhost_access_log.2021-05-17.txt появляются следующие строчки:

image

но пользы от них мало, ничего кроме ошибки 401 тут не видно.
Больше ни в каких логах при попытке получить OAuth токен информации не нашёл…

По поводу прав доступа пользователя admin: я создал роль REST Access с Областью видимости = REST, где разрешил “Использование REST API”, все сущности, все атрибуты, все экраны и назначил её пользователю admin. Если бы не было доступа, то во Frontend UI под админом я бы тоже не вошёл, но туда ведь пускает нормально:

image

А в файле $(app_home)/logs/app.log не смотрели?

Если у вас работает вход из фронтенд-клиента, то можете открыть Developer Tools в браузере и посмотреть, какие он запросы отправляет при логине. Может на что-то наведет мысль.

В $(app_home)/logs/app.log тоже ничего не нашёл, там вообще нет каких-либо записей связанных с попытками послать запрос из Postman.

Но в Developer Tools браузера нашёл кое-что интересное. Взял запрос при успешном логине в Frontend UI и методом сравнения выяснил, что если взять заголовок Cookie:… из логин-запроса и подставить в свой, то всё выполняется корректно:
image

image

Но тогда возникает вопрос, ведь в документации при получении OAuth ничего не сказано про куки, и откуда изначально их необходимо брать, не каждый же раз копировать из браузера.

Нашёл, что в Postman можно подключить утилиту Interceptor, которая может подтягивать Cookie из браузера для указанных ресурсов (например, в моём случае localhost). Опишу, если вдруг кто-то столкнётся с подобной проблемой:

  1. Необходимо нажать на иконку Interceptor в правом верхнем углу:
    image

Затем добавить свой домен (например, localhost) и включить Capture Cookies:
image

При нажатии на Cookies теперь вы можете убедиться, какие куки подтягиваются из браузера в Postman:
image

После этого всё заработало.
Может быть стоит добавить этот момент в документацию по REST API?
Александр, спасибо за помощь!