Создать веб-сервис, который хранит данные в безопасности? - PullRequest
1 голос
/ 18 июня 2009

Я хочу создать веб-сервис, который позволит пользователям вводить долготу и широту для конкретного здания. Здания будут относиться к более широкой категории, называемой Регион. Если конкретное здание не существует в регионе, пользователь может добавить данные о долготе и широте через веб-сервис. Аналогично, если пользователь считает данные неточными, он может обновить их.

Этот веб-сервис не должен иметь веб-интерфейс только RESTful API, который был бы доступен только для моих приложений. Я хочу, чтобы веб-сервис мог принимать новые и обновленные данные (как описано выше), а также распечатывать соответствующие данные (в формате xml) на основе соответствующих вызовов API.

Мне нужно убедиться, что эти данные будут в безопасности - то есть никто не сможет получить доступ к накопленным мной данным.

Каков наилучший способ сделать это? Я знаком с клиентской Java и не очень много серверной технологии (не знаком с серверной Java, rails, django и т. Д ...). Какой язык / рамки следует использовать, чтобы удовлетворить мои потребности с минимальной кривой обучения?

Ответы [ 3 ]

2 голосов
/ 18 июня 2009

Я использовал фреймворк Restlet для развертывания веб-сервисов, защищенных паролем. Он поддерживает базовую аутентификацию и некоторые другие из коробки. Вы также можете настроить свои службы за https "разъем сервера".

Другой подход - запустить приложение на сервере приложений Java EE, который поддерживает JSR 196 (например, Glassfish или JBoss). Затем вы будете использовать возможности сервера для установления аутентификации.

Вот страница безопасности Glassfish .

2 голосов
/ 18 июня 2009

Вы можете просто использовать обычную аутентификацию (имя пользователя / pw) с включенным ssl. Таким образом, вы шифруете соединение и предоставляете широко поддерживаемые средства аутентификации. Я верю, что Apache Axis позаботится обо всем за вас.

1 голос
/ 18 июня 2009

Если вы никогда не программировали серверный код, то, боюсь, вы столкнетесь с довольно крутой кривой обучения. Если вы знакомы с Java, то хорошим выбором будет фреймворк Restlet, упомянутый другим комментатором. Он прост в использовании, включает в себя как клиентские, так и серверные инструменты, и имеет довольно приличную документацию. Видео скриншоты очень хорошие.

Другим вариантом является Ruby on Rails. В настоящее время я реализую нечто очень похожее на то, что вы планируете, и Rails сработал очень хорошо. Rails имеет встроенную поддержку вывода XML через класс ActiveRecord и шаблоны XML Builder. Я использовал Atom Authentication (http://www.xml.com/pub/a/2003/12/17/dive.html) между клиентом и сервером, и он прекрасно работает. Существует кривая обучения как для Ruby, так и для Rails, но мощь фреймворка того стоит. Книги по Rails в The Pragmatic Programmer, но у О'Рейли есть и хорошие.

...