Настройка authlogic-oauth с помощью google

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

Я следую руководству по плагину 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  

Я не совсем уверен, где я могу найти информацию, которую мне нужно заполнить. Я читал https://developers.google.com/identity/protocols/OAuth_ref, но я просто не уверен, где я все беру и что плагин обрабатывает сам.

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


person Zak    schedule 10.04.2010    source источник


Ответы (1)


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

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

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

person retro    schedule 19.04.2010
comment
на самом деле это не так. OAuth специально разработан для авторизации, а не для аутентификации. И это включает в себя защищенный доступ к личным данным. Twitter (и некоторые другие) просто используют его как способ аутентификации. en.wikipedia.org/wiki/OAuth - person Bo Jeanes; 16.07.2010