2014-09-16 2 views
1

В моей текущей работе мне необходимо разработать механизм запуска REST API. Я прочитал тезис Роя Филдинга, задокументировал себя, и, наконец, я получил то, что работает очень просто, с высокой производительностью, соответствующей спецификации Fielding REST.Понимание OAuth2.0 и REST API Security

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

Опять же, я задокументировал себя, и я хотел использовать OAuth2.0 в своем движке. Проблема в том, что я вообще ничего не понимаю, как использовать этот протокол.

  • Я не понимаю, как потребитель может соединиться и быть узнанным сервером.
  • Я не понимаю, должен ли я предоставить ключ API для моего потребителя (например, Facebook, Twitter и Google) или если токен будет автоматически сгенерирован, если я отправлю логин/пароль на сервер
  • Я не знаю если мне нужно создать собственный сервер OAuth2.0, который предоставляет ключи, или если для обеспечения безопасности достаточно библиотек OAuth2.0.

Фактически, я ничего не понимаю с OAuth2.0, и мне нужно учиться. Проблема в том, что каждая документация, которую я пытаюсь читать, похожа на китайскую, я не нашел простой, шаг за шагом, которая поможет мне в этом.

Вот почему я размещаю здесь, вы можете помочь мне понять немного больше OAuth2.0 и защищенную аутентификацию для API?

Я охотно не говорил о технологиях, потому что хочу понять OAuth2.0, прежде чем применять его технически.

Спасибо за все

ответ

3

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

Конечно, вы можете посмотреть и на другие методы. Я использовал HAWK в нескольких API-интерфейсах REST/Hypermedia и нашел, что он отлично подходит как для узлов nodejs, так и для .NET-стеков.

+0

Спасибо за ваши особые объяснения о NodeJS. Я действительно изучаю документацию, это очень сложно понять ...: - /. Я буду продолжать читать – mfrachet

1

Спасибо за ваш ответ. Я изучил немного больше, чем OAUth2 en, попытался реализовать его с помощью 3 stragery: basic, clientPassword, bearer.

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

OAuth2 server creation with nodejs

Смежные вопросы