Uwierzytelnianie szyny w różnych aplikacjach / serwerach

Tworzę aplikacje do szyn, zachowując ich modułowość. Próbuję zaimplementować różne części pod usługami.

Powiedz przykład Facebooka:
a) AMainApp dzięki czemu użytkownik może mieć ścianę, posty itp.
b) APhotoApp który przechowuje zdjęcia, pozwala użytkownikowi zobaczyć jego zdjęcia itp. Jest to samodzielna aplikacja, która będzie miała API REST, które może być również używane przez MainApp.

Myślałem o użyciu OAuth jako rozwiązania Single Sign On (jak w tym samouczku)http://blog.joshsoftware.com/2010/12/16/multiple-applications-with-devise-omniauth-and-single-sign-on/) gdzie każda aplikacja będzie autoryzowana przez OAuth i uzyska dostęp do bieżącej sesji użytkownika na podstawie pliku cookie.

Pierwsze pytanie: Czy to realne rozwiązanie?

Drugie Pytanie: Chcę móc zadzwonić doPhotoApp API zMainApp serwer (nie z przeglądarki użytkownika). Jak działa uwierzytelnianie w tej sytuacji?

Trzecie pytanie: Jak by to działało, jeśli powiedziałbym, że mam usługę, która używała node.js?

questionAnswers(3)

yourAnswerToTheQuestion