open id認証プラグインを備えたredmine 2.3があります。コードは次のようになります
def login
domain = GoogleAppsAuthSource.find params[:id]
oid = "https://www.google.com/accounts/o8/site-xrds?hd=#{domain.name}"
attributes = [AX_EMAIL, AX_FIRST, AX_LAST]
authenticate_with_open_id(oid, :return_to => request.url, :required => attributes) do |result, identity_url, profile_data|
if result.successful?
email = profile_data[AX_EMAIL].first
first = profile_data[AX_FIRST].first
end
end
ここでは、サーバーから返されるプロファイル データは常に空白です。これは、1.3 などの古いバージョンの redemine で動作しています。コンソールに表示される正確なエラーは、
ArgumentError (http://axschema.org/contact/email/ is not a defined simple registration field):
lib/plugins/open_id_authentication/lib/open_id_authentication.rb:145:in `complete_open_id_authentication'
lib/plugins/open_id_authentication/lib/open_id_authentication.rb:121:in `authenticate_with_open_id'
プロファイルデータオブジェクトを印刷しようとすると、
############### PROFILE DATA ###############
--- !ruby/object:OpenID::SReg::Response
ns_alias: sreg
data: {}
これが私のRedmine環境です
環境: Redmine バージョン 2.3.1.stable Ruby バージョン 1.9.3 (i686-linux) Rails バージョン 3.2.13 環境開発 データベース アダプター Mysql2 Redmine プラグイン: google_apps 0.1 redmine_meeting_room_calendar 0.0.1
以下は、私のシステム Rails 環境です user@user-desktop:~/PROJECTS/redmine-2.3.1$ rake about /home/user/.rvm/gems/ruby-1.9.3-p374/gems/bundler-1.3.5/ lib/bundler/runtime.rb:216: warning: Insecure world writable dir /home/user in PATH, mode 040777 アプリケーションの環境について Ruby バージョン 1.9.3 (i686-linux) RubyGems バージョン 1.8.24 Rack バージョン 1.4 Rails バージョン 3.2 .13 Active Record バージョン 3.2.13 Action Pack バージョン 3.2.13 Active Resource バージョン 3.2.13 Action Mailer バージョン 3.2.13 Active Support バージョン 3.2.13 Middleware ActionDispatch::Static、Rack::Lock、#、Rack::Runtime、 Rack::MethodOverride、ActionDispatch::RequestId、Rails::Rack::Logger、ActionDispatch::ShowExceptions、ActionDispatch::DebugExceptions、ActionDispatch::RemoteIp、ActionDispatch::リローダー、ActionDispatch::Callbacks、ActiveRecord::ConnectionAdapters::ConnectionManagement、ActiveRecord::QueryCache、ActionDispatch::Cookies、ActionDispatch::Session::CookieStore、ActionDispatch::Flash、ActionDispatch::ParamsParser、ActionDispatch::Head、Rack: :ConditionalGet, Rack::ETag, ActionDispatch::BestStandardsSupport, OpenIdAuthentication アプリケーション ルート /home/user/PROJECTS/redmine-2.3.1 環境開発 データベース アダプター mysql2 データベース スキーマ バージョン 20130217094251OpenIdAuthentication アプリケーション ルート /home/user/PROJECTS/redmine-2.3.1 環境開発 データベース アダプター mysql2 データベース スキーマ バージョン 20130217094251OpenIdAuthentication アプリケーション ルート /home/user/PROJECTS/redmine-2.3.1 環境開発 データベース アダプター mysql2 データベース スキーマ バージョン 20130217094251
助けてください ..