Я полностью согласен, что вы хотите OAuth; Я говорю, что работал как на OAuth, так и на OpenID системах. Я также был в вашей лодке несколько раз, чтобы разработать API веб-сервиса REST.
Для действительно хороших идей об OAuth и почему это то, что вы хотите, смотрите в прикрепленной статье:
Они должны быть прочитаны, четыре части прочитают их все:
http://hueniverse.com/oauth/guide/
RFC, прочитайте после прочтения выше, поскольку это может быть немного сложным для большинства:
http://oauth.net/core/1.0
И, наконец, возможно, какой-нибудь код. У меня есть несколько проектов, которые используют Java / Groovy для OAuth. Один из них - старый добрый клиент OAuth, другой - клиент для конкретных взаимодействий с NetFlix.
http://www.blueleftistconstructor.com/projects/
Если вы относительно неопытны с REST (вы еще не создали полнофункциональный веб-API), я бы порекомендовал вам купить (или лучше попросить вашего босса) «RESTful Web Services» от Richardson & Ruby. Это книга О'Рейли. Я могу сказать, что это одна из их лучших книг, дебютировавших за последние несколько лет.
Это может также помочь взглянуть на некоторые API на основе RESTful OAuth. NetFlix API - прекрасный пример: http://developer.netflix.com/docs
Удачи и удачного кодирования!