Безопасность Webservice - чего достаточно? - PullRequest
4 голосов
/ 15 августа 2011

Я хочу предоставить веб-сервис, который может вызываться несколькими клиентами для получения транзакционных данных. Каждый вызывающий клиент будет получать разные подмножества данных.

Мы размещаем веб-сервис в Websphere 7 - внешний веб-сервис по сути является прокси для реального WS, работающего на нашей платформе ESB.

В настоящее время у меня установлена ​​следующая защита:

1) Имя пользователя / пароль WS-Security, отправленные в заголовке (plantext). Это проверено на соответствие нашему пользовательскому хранилищу (хранилище используется в другом месте и было проверено на безопасность).

2) HTTPS

3) Ограничение вызывающих IP-адресов через брандмауэр

4) Данные полезной нагрузки зашифрованы PGP с использованием открытого ключа клиента

Это безопасно "достаточно"? Я уверен, что данные полезной нагрузки безопасны, но я не совсем уверен, что механизм доступа на 100% безопасен? Мы используем то, что встроено в IBM Websphere для # 1.

Ответы [ 3 ]

4 голосов
/ 15 августа 2011

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

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

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

Возможно, последняя мысль (но я полагаю, вам не нужен этот совет):
Я не знаю о Websphere, но на других серверах приложений или ESB (например, JBoss) по умолчанию активированы некоторые инструменты администратора, которые, как правило, свободно доступны через Интернет (просто google для / jmx-console ...).Убедитесь, что они защищены паролями или, при необходимости, отключите их.

1 голос
/ 15 августа 2011

Является ли подмножество данных, которое возвращается службой, связанным с идентифицированным идентификатором клиента, или возвращенным набором данных, определяемым параметром, который передается?

1 голос
/ 15 августа 2011

Для меня это более чем достаточно.Единственное, о чем я могу подумать - это использовать временные пароли.Смотрите RSA для деталей.

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