2010-04-10 2 views
7

Привет всем, Я пытаюсь изучить рельсы, и я работаю над приложением, которое использует Google для входа в систему, а также для данных календаря. В настоящее время я работаю над настройкой authlogic-oauth и с некоторыми проблемами.Настройка authlogic-oauth с помощью google

Я слежу за руководством для плагина authlogic-oauth (см. Ссылку выше), и я на шагах 4 и 5. Сначала я все еще изучаю язык, и я не уверен, где код из пункта 4 переходит в контроллерах:

@user_session.save do |result| 
    if result 
    flash[:notice] = "Login successful!" 
    redirect_back_or_default account_url 
    else 
    render :action => :new 
    end 
end 

во-вторых, я пытаюсь настроить шаг 5, фактическое Google шаг OAuth данные:

class UserSession < Authlogic::Session::Base 
    def self.oauth_consumer 
    OAuth::Consumer.new("*TOKEN*", "*SECRET*", 
    { :site=>"**http://google.com**", 
     :authorize_url => "*http://google.com/xxx*" }) 
    end 
end 

Я не совсем уверен, где я найдите информацию, которую мне нужно заполнить. Я читал hxxp: //code.google.com/apis/accounts/docs/OAuth_ref.html (извините, я может отправлять только одну гиперссылку), но я просто не уверен, где я получаю все и что плагин обрабатывает для себя.

Наконец, я не совсем уверен, как я получаю информацию о календаре, мне только что сказали, что я могу кого-то из IRC. Я делаю это через этот плагин, или мне нужно использовать еще один?

Большое спасибо!

ответ

1

Как подключиться к Google OAuth в приложении Ruby on Rails, вы можете прочитать в блоге manu-j. В первом абзаце упоминается, как получить эти ключи. Вы должны зарегистрировать свой домен в Google.

Но это просто входит в ваше приложение, а не в вашу учетную запись google. Похоже, что после входа в систему с OAuth вы можете получить доступ ко всем своим приложениям google и сохраненным данным Google (например, к календарю). Служба OAuth похожа на OpenID. Оба являются только службами, позволяющими авторизовать пользователя в вашем приложении (вместо того, чтобы регистрироваться в вашем приложении).

Если вы хотите использовать некоторые данные календаря Google в своем приложении, вы можете начать с Googlecalendar gem, rails plugin и example.

+0

действительно это неправильный. OAuth специально разработан для авторизации, а не для аутентификации. И это включает защищенный доступ к конфиденциальным данным. Twitter (и несколько других) просто используют его для двойного использования в качестве метода проверки подлинности. http://en.wikipedia.org/wiki/OAuth –

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