Разработка Coldfusion Web Service - PullRequest
       1

Разработка Coldfusion Web Service

0 голосов
/ 03 октября 2010

Мне нужно разработать / спроектировать веб-службу Coldfusion, которая использует несколько вызовов объектов и функций.

  1. Каков хороший источник образцов для разработки с точки зрения ООП?
  2. Каков наилучший способ защиты веб-службы?
  3. как аутентифицировать внешних / внутренних пользователей, любой образец?

К вашему сведению, этот веб-сервис будет использоваться несколькими отделами.

спасибо A

1 Ответ

6 голосов
/ 03 октября 2010

ООП примеры по всему Интернету. У меня нет никакой под рукой, поэтому я пропущу эту часть и перейду прямо к аутентификации и безопасности.

Во-первых, аутентификация. Есть несколько возможных ответов в зависимости от того, каких пользователей вы аутентифицируете. Например, если вы аутентифицируете пользователей, подключающихся с помощью 3-го компонента - например, приложения для настольного компьютера или телефона, отправляющего сообщения в Twitter, - я бы сказал, что OAuth - хорошее решение. Существует хорошая библиотека для публикации и использования OAuth-интеграций по адресу oauth.riaforge.com . Если вы ищете более легкий вес, мы использовали простую схему создания токенов для веб-службы, которая использовалась только партнерскими службами. По сути, партнерская служба отправляет то, что составляет пару имени пользователя и пароля, токен создается с отметкой времени «последнего использования», и каждый раз, когда веб-служба взаимодействует после этого, мы проверяем хранилище токенов.

Безопасность также очень зависит от ваших конечных целей. Однако есть несколько основных принципов, которым я всегда пытался следовать. Во-первых, создайте ваши базовые CFC, как обычно, для построения ваших объектов. Точки входа должны быть открытыми, вспомогательные функции - частными и т. Д. Это включает в себя создание объекта для обработки любой выбранной вами модели аутентификации. Кроме того, создайте свой публичный API. Все это должны быть просто функции доступа. Они вызываются внешними приложениями, вызывают объект безопасности, а затем вызывают соответствующие объекты и методы для достижения цели вызова. Таким образом, вам никогда не придется встраивать уровень безопасности в вызовы базовой функциональности, но у вас также есть простой способ включить безопасность. Помните, что один вызов API не должен отражать один базовый вызов - при необходимости вы можете создавать более сложные подпрограммы.

Итак, подведем итог.

Аутентификация

  • OAuth
  • Генерация временного токена

Безопасность

  • частный / публичный (не удаленный) базовый уровень
  • уровень приватной / публичной (не удаленной) аутентификации
  • удаленный API-уровень
...