Мы пытаемся включить настраиваемый уровень обработки учетных данных в наш сервлет 0cActivePivot, перехватывая входящие запросы в Cube и аутентифицируя их при необходимости с использованием фильтра безопасности Spring. Наша система предоставляет «API-ключ» для входа в систему, если имя пользователя и пароль действительны, и нам хотелось бы, чтобы какой-то способ заставить Excel использовать этот ключ после его входа в систему с использованием HTTP Basic AUthenization.Базовая авторизация Excel/OLAP и HTTP - может ли Excel помнить, что он вошел в систему?
При вводе учетных данных для входа в Excel «Connection Data Wizard» для подключения к AP Cu, она проходит через нормальную процедуру делать GET на кубу URL, где мы возвращаем 401 (так как нет API Ключ присутствует в заголовках) с заголовком «WWW-Authenticate: Basic Realm = ...», на который он отвечает , получая тот же URL-адрес с заголовком «Authenticate: Basic ...» , с которым мы выполняем имя пользователя/пароль и получить ключ API и на самом деле вернуть содержимое для запроса. Это все хорошее и работает как ожидалось.
Вопрос в том, можем ли мы получить Excel, чтобы он помнил, что он имеет успешно аутентифицированный и просто передает ключ API в заголовок «Аутентификация» в будущих запросах? До сих пор у меня пытался отправить ключ API обратно в заголовок «Аутентификация» в ответе , но Excel, похоже, не заметил этого. Есть ли стандартный способ пройти 'токен входа' для базового auth для клиента ?
Это позволит решить 2 проблемы на нашей стороне: 1) мы не должны делать Войти каждый раз, когда запрос сделан и 2) мы не получим удвоенное количества запросов (GET -> 401 -> GET с Auth -> return) с Excel знал бы, что он уже прошел аутентификацию.