Безопасность в API-аутентификации - PullRequest
0 голосов
/ 01 апреля 2010

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

Кто-нибудь знает, есть ли какие-либо явные преимущества, недостатки, риски и т. Д. Использования набора учетных данных по сравнению только с одним элементом (каким бы сложным он ни был)?

PS: канал связи будет безопасным в любом случае, и он отделен от этой конкретной темы

1 Ответ

0 голосов
/ 02 апреля 2010

Возможно, вам потребуется больше информации о вашей системе - например, это веб-приложение или служба. Если это веб-приложение, и у вас есть защищенный канал для клиента, тогда простота будет настоятельно способствовать использованию объекта сеанса веб-контейнера.

Должен ли каждый запрос быть аутентифицированным или нет? Некоторые факторы, которые могут повлиять на ваше решение:

  • Насколько сложным / медленным является процесс аутентификации?
  • У клиентов обычно выполняется несколько запросов в сеансе или они редко вызывают только один сервис.
  • Существуют ли разные политики аутентификации / авторизации для разных запросов?
  • Важно ли иметь возможность аннулировать доступ к клиенту в середине сеанса?
...