Когда мне нужно добавить oAuth? - PullRequest
3 голосов
/ 14 октября 2010

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

Этот вопрос связан с другим вопросом, который я задал, но они заслуживают отдельного вопроса.Я подробно описываю мой конкретный пример использования здесь:

Реализация доступа с помощью oAuth или другого

Ответы [ 2 ]

7 голосов
/ 14 октября 2010

OAuth обычно используется, когда вы хотите предоставить единую точку аутентификации для нескольких сервисов или если вы хотите интегрировать приложение с существующим сервисом аутентификации;например, если вы хотите, чтобы ваши пользователи входили в систему, используя данные своей учетной записи Twitter.

По моему опыту, единственная причина, по которой у меня была причина для внедрения службы аутентификации OAuth, заключалась в том, что у нас было запущено 3 совершенно разных приложения.разные платформы (JBoss, LAMP и ASP.NET) на разных серверах.Чтобы компенсировать разные базы данных и разные технологии, мы остановились на реализации OAuth и централизованной аутентификации в одной точке.Это также обеспечило превосходные средства защиты пользовательской информации между серверами;данные зашифровываются между OAuth-сервером и клиентом, что затрудняет угрозу.

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

2 голосов
/ 18 октября 2010

У OAuth есть несколько вещей:

1) OAuth - это довольно хорошо известный стандарт, который означает, что о нем достаточно информации, библиотек кода на разных языках и платформах.и т. д. Это может быть самый важный аспект, если вы пытаетесь получить широкое распространение вашего сайта / службы (например, Twitter, FB и т. д.)

2) OAuth была обоснованно подтвержденас точки зрения безопасности, поэтому вам не нужно беспокоиться (слишком много), является ли это концептуально обоснованным.Ваша реализация, конечно, другое дело ...

3) Как уже упоминалось, OAuth хорошо подходит для распределенных / федеративных сценариев.Это позволяет передавать ответственность за проверку подлинности на аутсорсинг (например, Microsoft Azure может выполнять проверку подлинности OAuth от вашего имени) и / или совместно использовать учетные данные для нескольких служб.

Надеюсь, это поможет!

...