Rails.application.config.providers = [:google, :twitter, :ldap] Rails.application.config.omniauth_google = ENV['GOOGLE_OAUTH2_ID'].present? Rails.application.config.omniauth_twitter = ENV['TWITTER_ID'].present? Rails.application.config.omniauth_ldap = ENV['LDAP_SERVER'].present? Rails.application.config.middleware.use OmniAuth::Builder do provider :twitter, ENV['TWITTER_ID'], ENV['TWITTER_SECRET'] provider :google_oauth2, ENV['GOOGLE_OAUTH2_ID'], ENV['GOOGLE_OAUTH2_SECRET'], scope: ['profile', 'email', 'youtube', 'youtube.upload'], access_type: 'online', name: 'google' provider :ldap, host: ENV['LDAP_SERVER'], port: ENV['LDAP_PORT'], method: :plain, allow_username_or_email_login: true, uid: ENV['LDAP_UID'], base: ENV['LDAP_BASE'], bind_dn: ENV['LDAP_BIND_DN'], password: ENV['LDAP_PASSWORD'] end