Scala Remote Actor Security - PullRequest
       7

Scala Remote Actor Security

8 голосов
/ 15 сентября 2009

Каков (или а) рекомендуемый способ реализации безопасности для удаленных участников Scala (проверка подлинности удаленных узлов, позволяющих общаться с этим субъектом, и шифрование содержимого обсуждения)?Кто-нибудь сделал это;как это получилось?

  • SSL ...

  • некоторая библиотека Java ...

  • немного JSR ...

  • настраиваемая сериализация ...

  • только VPN будет работать на этом ...

???

Ответы [ 2 ]

2 голосов
/ 31 октября 2009

«A» способ, хотя определенно не «способ» будет шифровать все сообщения с использованием XML-шифрования (http://www.w3.org/TR/xmlenc-core/).

Несколько причин, по которым это кажется хорошей идеей:

  • Старые / надежные библиотеки Java широко доступны.
  • Работает на прикладном уровне: легко понять, отладить и выполнить юнит-тестирование.
  • Нет необходимости для работы сетевого администратора, как с VPN.
  • Нет необходимости для работы администратора сервера, как с SSL.
  • Опубликованные схемы шифрования всегда намного лучше, чем любое проприетарное решение, которое вы можете попробовать придумать самостоятельно.

Конечно, если вы собираетесь совершить скачок в XML, вы могли бы также сделать дополнительный шаг к веб-службе, как предложил другой ответчик, - но это происходит за счет дополнительных слоев и дополнительной настройки.

В моем ответе предполагается, что это проект с одним человеком ... В корпоративной среде вам действительно необходимо разделить полномочия и добавить больше уровней безопасности, чем это необходимо.

0 голосов
/ 27 сентября 2009

Я предполагаю, что не рекомендуется использовать удаленного актера в ситуации, когда требуется безопасность, по крайней мере, на данный момент. Это удаленный вызов кода Scala, доступный только из кода Scala, аналогичный Java RMI , поэтому предполагаемое использование, вероятно, находится в локальной сети. Я думаю, что было бы здорово иметь защитный слой поверх существующего удаленного актера. А пока создайте веб-сервис , используя Lift ?

...