Как сервис аутентификации и авторизации реализован для ESB - PullRequest
2 голосов
/ 26 ноября 2010

Я работаю над компонентом безопасности для использования с ESB для клиента с очень конкретными требованиями высокого уровня:

  1. Интеграция в существующий IWay Service Manager версии 5.5 ESB (системы безопасности нет)в существующей установке).
  2. Предоставить информацию об уровне аутентификации и авторизации из исходных данных, хранящихся на существующем сервере активных каталогов, используемом для другой системы (предпочтительно с использованием LDAP).
  3. Аутентификация и авторизация должны бытьвыполненный в ESB как интерфейс для ESB, будет открыт как для внутренних, так и для внешних клиентов, поэтому полный контроль над клиентом невозможен.
  4. Нельзя полагаться на то, что у клиента есть сертификат, разрешающий двусторонний SSLАутентификация, однако односторонняя аутентификация, когда клиент проверяет, что он подключается к нужному серверу, возможна, поэтому HTTPS-соединения могут быть установлены.
  5. Сервис должен работать на Weblogic (но я буду рад принять предложения относительноменьше)

Дополнительная информация: IWay ESB - это коммерческое, закрытое и довольно плохое решение, в версии 5.5 оно не предоставляет готового решения, которое соответствует требованиям.он также не имеет состояния, поэтому никакие сеансы не могут поддерживаться, кроме использования файла cookie или какого-либо метода, аналогичного хранению информации.

Текущие идеи: реализовать службу единого входа, добавляемую к шине обмена сообщениями, которая предоставляет провайдера идентификации,функциональность поставщика услуг, поэтому при первоначальной аутентификации будет предоставлен токен, который затем может быть сохранен клиентом и передан с каждым последующим запросом на аутентификацию и пройденным уровнем авторизации (который я считаю довольно стандартным шаблоном проектирования).

Было проведено исследование по реализации SSO + SAML, похоже, что openAM, Shibboleth, CAS предоставляют слишком полное решение, которое больше подходит для архитектуры типа портала (например, CAS) или из системы, где исходный SAMLИдентификационный токен полностью получен от другого сервера, а затем передан в систему (как, например, реализация SAML для некоторых его служб в Google).

Я также изучал JBossESB, openESB и решения для смешанных сервисов, которые, кажется, используют индивидуальную реализацию SAML, которую нельзя перенести на Weblogic и Zxid с ограниченной документацией.

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

Есть еще вопросы, которые я бы с удовольствием разработал.

Ответы [ 3 ]

1 голос
/ 10 декабря 2010

Кажется, что решение, использующее SAML, является допустимым решением для случаев, когда пользователи потенциально / действительно требуют доступа к сторонней службе на ESB, но не хотят, чтобы сторонняя служба знала о спецификах безопасности ESB и учетные данные пользователя. Таким образом, ESB может предоставить провайдера токена SAML, где пользователь может получить билет и передать его в разные сервисы для аутентификации, затем сервисы проверяют токен на аутентификацию и возможную информацию авторизации (только с SAML2). В дополнение к этому SAML может использоваться как открытый ID, где пользователи управляются извне, и пользователи обращаются к внешнему провайдеру токенов, чтобы получить билеты SAML.

Это было правильное решение для нас, так как клиент хотел быть очень осведомленным о пользователях, обращающихся к ESB, и не было никакого плана доступа к сторонним службам, поскольку это была полностью закрытая система.

Впоследствии мы внедрили более настраиваемый механизм SAAS (безопасность как сервис) для внутренней аутентификации и авторизации внутри ESB (я знаю, это звучит плохо, но у iWay есть ограниченные возможности) с использованием библиотек безопасности Spring и функциональности Remember Me, которые в наш случай соответствует требованиям.

Низкий, и вот наши клиенты изменили свои требования и попросили об интеграции с share point. Это, однако, упростило модель безопасности в нашей системе, потому что мы тогда разработали следующее:

Основная модель безопасности iWay основана на SSL-сертификатах, можно реализовать поставщика SSL, который будет управлять сертификатами, поэтому вы должны иметь возможность предоставлять точку доступа с вашим SSL-сертификатом, а iWay - с общедоступным сертификатом и защищать каналы. Затем между двумя серверами вы можете управлять пользователями в iWay, которые могут получить доступ к ESB на системном уровне и указать пользователя точки доступа, даже указав его ip, эта информация передается в виде простого текста, но по SSL, а в нашем случае - между серверами в та же сеть.

Затем мы оставляем точку обмена для аутентификации пользователей на более тонком уровне, поэтому доступ к приложениям управляется на уровне портала «точка доступа», и единственное, о чем смутно осведомлен ESB, это информация об авторизации, которая передается с помощью клиентское SOAP-сообщение и определяет, к какому уровню могут быть доступны службы (эта информация используется на уровне службы).

Недостатками этого решения являются:

Для каждого нового клиентского приложения, разработанного для доступа к интерфейсам ESB, должен быть настроен новый пользователь ESB, чтобы не было возможности разрабатывать клиентов, которые могут свободно использовать определенные службы на ESB.

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

Другие баллы:

Мне известно, что более новая версия iWay предоставляет адаптер LDAP, который должен иметь возможность обмениваться данными с AD, чтобы вы могли подключить свой сервер LDAP к ESB таким образом, чтобы он мог использоваться другим клиентом или службами в ESB, но вам придется настроить точку доступа для доступа к информации через бизнес-провайдера iWay.

Я также считаю, что iWay 6 предоставляет провайдера токенов SAML, которого вы можете использовать (возвращаясь к тому, что я говорил ранее об использовании SAML), но я не верю, что это подходит для решения с точкой доступа.

Я бы хотел поделиться с вами другими идеями, поскольку мы оба делаем одно и то же. Можете ли вы найти меня через мой аккаунт в Твиттере, который указан в моем блоге?

0 голосов
/ 23 декабря 2010

Извините за задержку ... был довольно занят здесь ...

По сути, мы провели много тестов между iWay и SharePoint, и мы не можем настроить его на отправку учетных данных NTLM, требуемых SharePoint. Мы попытались настроить каналы, прокси-серверы и другие решения в рамках инструмента ...

Мы позвонили им, чтобы надеяться на помощь ...

Паскаль

0 голосов
/ 09 декабря 2010

В настоящее время мы работаем с iWay Server Manager 6.0.1, а также испытываем трудности с определением того, КАК управлять безопасностью веб-служб в этом инструменте.

Мы хотим создать с его помощью веб-сервисы с защитой AD, как если бы мы использовали .NET Web Services и не нашли решения. Даже обсуждение этого с персоналом iWay не прояснило это в наших умах.

Теперь нам нужно подключиться к веб-службам SharePoint, и проблема определенно будет.

Прогрессировал ли ты ситуацию? Мы хотели бы получить отзывы от людей, использующих инструмент, о том, как они на самом деле реализуют безопасность с iWay.

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