2013-11-18 3 views
0

У меня есть клиент, который решил использовать Business Catalyst для своих общедоступных служб и хочет получить доступ к примерно четырем различным серверам для различных видов деятельности. Команда разработчиков выдвинула требование о возможности входа на эти различные серверы с использованием уникальных форм входа в Business Catalyst для каждого пункта назначения.Проблемы с безопасностью и технико-экономическим обоснованием при входе на другой сервер через интерфейс Business Catalyst

Первая проблема заключается в том, что у вас есть форма входа в систему на странице https. Business Catalyst имеет «безопасные зоны», которые могут быть доступны пользователям, которые уже вошли в Business Catalyst, и я считаю, что есть способ сделать это без входа в систему, открыв защищенную зону до нескольких IP-адресов. Это не похоже на добросовестное движение любого разработчика (безопасная зона - оксюморон, если она должна быть подвержена всем), поэтому дайте мне знать, если это пройдет проверку безумия. Наличие логина для входа в Business Catalyst, чтобы он мог войти в один из безопасных серверов, не будет работать с точки зрения UX.

Вторая проблема заключается в том, что Business Catalyst заявляет, что она должна находиться в защищенной зоне, прежде чем она сможет работать с внешними инструментами, с которыми мне нужно это для работы. Это можно решить, разрешив первую проблему, но это больше связано с запросами формы в целом. У меня есть модули контента, которые должны запрашивать эти серверы без входа в систему, чтобы вывести некритичную информацию в ответ.

В этот уик-энд я выполнил неисчерпывающий поиск, чтобы попытаться найти изящное решение этой проблемы, но это не похоже на то, что Business Catalyst был разработан для обработки.

Для тех из вас, кто имеет TLDR;

  • Мне нужен безопасный способ входа на 1 из 4 серверов из Business Catalyst без входа в Business Catalyst (теория текущей реализации, отмеченная выше).
  • Мне нужен способ запроса некритических информационных ответов от 1 из 4 серверов, опять же без входа в Business Catalyst (например, для возврата результатов оценки стоимости).
  • Недопустимо иметь логин для входа в Business Catalyst, просто чтобы вытащить запросы или войти на 1 из 4 серверов.
  • Возможно, не удастся разрешить пользователю доступ к другим серверам с помощью дескрипторов сеансов Business Catalyst.

ответ

3

Когда пользователь входит в BC, он получит файл cookie в форме VSVxxxxx, где xxxxxx - это идентификатор сайта BC. Содержимое cookie - это хэшированный активный идентификатор сеанса. Затем BC экспортирует два API веб-сервиса - CRM и eCommerce. В веб-службе CRM существует метод Contact_IsLoggedIn, который принимает два параметра - идентификатор пользователя и идентификатор сеанса. Идентификатор сеанса - один из пользователей VSVxxxxx cookie. Он возвращает true/false, независимо от того, действительно ли пользователь зарегистрирован в BC.

Обратите внимание, что BC имеет немного странную обработку сеанса ... она длится 30 минут. независимо от того, нажимает ли пользователь на сайте или нет.

+0

Благодарим за этот ответ. Клиент изменил свое требование, поэтому я не могу проверить, что это правильный ответ. Мы закончили использование CORS для удовлетворения нескольких требований к интерактивности, и все остальное было удалено из этого выпуска. –

 Смежные вопросы

  • Нет связанных вопросов^_^