when "openid"
uid.match(%r{https://www.google.com/accounts/o8/id?(.*)}) ||
uid.match(%r{https://me.yahoo.com/(.*)})
- when "google", "facebook", "microsoft_graph"
+ when "google", "facebook", "microsoft"
true
else
false
<% if Settings.key?(:facebook_auth_id) -%>
<li><%= auth_button "facebook", "facebook" %></li>
<% end -%>
- <% if Settings.key?(:microsoft_graph_auth_id) -%>
- <li><%= auth_button "microsoft_graph", "microsoft_graph" %></li>
+ <% if Settings.key?(:microsoft_auth_id) -%>
+ <li><%= auth_button "microsoft", "microsoft" %></li>
<% end -%>
<% if Settings.key?(:github_auth_id) -%>
<li><%= auth_button "github", "github" %></li>
openid_options = { :name => "openid", :store => openid_store }
google_options = { :name => "google", :scope => "email", :access_type => "online" }
facebook_options = { :name => "facebook", :scope => "email", :client_options => { :site => "https://graph.facebook.com/v4.0", :authorize_url => "https://www.facebook.com/v4.0/dialog/oauth" } }
-microsoft_graph_options = { :name => "microsoft_graph", :scope => "openid User.Read" }
+microsoft_options = { :name => "microsoft", :scope => "openid User.Read" }
github_options = { :name => "github", :scope => "user:email" }
wikipedia_options = { :name => "wikipedia", :client_options => { :site => "https://meta.wikimedia.org" } }
provider :openid, openid_options
provider :google_oauth2, Settings.google_auth_id, Settings.google_auth_secret, google_options if Settings.key?(:google_auth_id)
provider :facebook, Settings.facebook_auth_id, Settings.facebook_auth_secret, facebook_options if Settings.key?(:facebook_auth_id)
- provider :microsoft_graph, Settings.microsoft_graph_auth_id, Settings.microsoft_graph_auth_secret, microsoft_graph_options if Settings.key?(:microsoft_graph_auth_id)
+ provider :microsoft_graph, Settings.microsoft_auth_id, Settings.microsoft_auth_secret, microsoft_options if Settings.key?(:microsoft_auth_id)
provider :github, Settings.github_auth_id, Settings.github_auth_secret, github_options if Settings.key?(:github_auth_id)
provider :mediawiki, Settings.wikipedia_auth_id, Settings.wikipedia_auth_secret, wikipedia_options if Settings.key?(:wikipedia_auth_id)
end
openid: OpenID
google: Google
facebook: Facebook
- microsoft_graph: Microsoft
+ microsoft: Microsoft
github: GitHub
wikipedia: Wikipedia
api:
facebook:
title: Login with Facebook
alt: Login with a Facebook Account
- microsoft_graph:
+ microsoft:
title: Login with Microsoft
alt: Login with a Microsoft Account
github:
#google_openid_realm: ""
#facebook_auth_id: ""
#facebook_auth_secret: ""
-#microsoft_graph_auth_id: ""
-#microsoft_graph_auth_secret: ""
#github_auth_id: ""
#github_auth_secret: ""
+#microsoft_auth_id: ""
+#microsoft_auth_secret: ""
#wikipedia_auth_id: ""
#wikipedia_auth_secret: ""
# Thunderforest authentication details
google_openid_realm: "https://www.openstreetmap.org"
facebook_auth_id: "dummy"
facebook_auth_secret: "dummy"
-microsoft_graph_auth_id: "dummy"
-microsoft_graph_auth_secret: "dummy"
+microsoft_auth_id: "dummy"
+microsoft_auth_secret: "dummy"
github_auth_id: "dummy"
github_auth_secret: "dummy"
wikipedia_auth_id: "dummy"
class UseMicrosoftGraph < ActiveRecord::Migration[7.0]
def self.up
- User.where(:auth_provider => 'windowslive').update_all(:auth_provider => 'microsoft_graph')
+ User.where(:auth_provider => "windowslive").update_all(:auth_provider => "microsoft")
end
def self.down
- User.where(:auth_provider => 'microsoft_graph').update_all(:auth_provider => 'windowslive')
+ User.where(:auth_provider => "microsoft").update_all(:auth_provider => "windowslive")
end
end
}.tap do |providers|
providers[I18n.t("auth.providers.google")] = "google" if Settings.key?(:google_auth_id)
providers[I18n.t("auth.providers.facebook")] = "facebook" if Settings.key?(:facebook_auth_id)
- providers[I18n.t("auth.providers.microsoft_graph")] = "microsoft_graph" if Settings.key?(:microsoft_graph_auth_id)
+ providers[I18n.t("auth.providers.microsoft")] = "microsoft" if Settings.key?(:microsoft_auth_id)
providers[I18n.t("auth.providers.github")] = "github" if Settings.key?(:github_auth_id)
providers[I18n.t("auth.providers.wikipedia")] = "wikipedia" if Settings.key?(:wikipedia_auth_id)
end.freeze
OmniAuth.config.mock_auth[:openid] = nil
OmniAuth.config.mock_auth[:google] = nil
OmniAuth.config.mock_auth[:facebook] = nil
- OmniAuth.config.mock_auth[:microsoft_graph] = nil
+ OmniAuth.config.mock_auth[:microsoft] = nil
OmniAuth.config.mock_auth[:github] = nil
OmniAuth.config.mock_auth[:wikipedia] = nil
OmniAuth.config.test_mode = false
assert_template "site/welcome"
end
- def test_user_create_microsoft_graph_success
- new_email = "newtester-microsoft_graph@osm.org"
- display_name = "new_tester-microsoft_graph"
+ def test_user_create_microsoft_success
+ new_email = "newtester-microsoft@osm.org"
+ display_name = "new_tester-microsoft"
password = "testtest"
- OmniAuth.config.add_mock(:microsoft_graph, :uid => "123454321", :info => { "email" => new_email })
+ OmniAuth.config.add_mock(:microsoft, :uid => "123454321", :info => { "email" => new_email })
assert_difference("User.count") do
assert_difference("ActionMailer::Base.deliveries.size", 0) do
:params => { :user => { :email => new_email,
:email_confirmation => new_email,
:display_name => display_name,
- :auth_provider => "microsoft_graph",
+ :auth_provider => "microsoft",
:pass_crypt => "",
:pass_crypt_confirmation => "" } }
assert_response :redirect
- assert_redirected_to auth_path(:provider => "microsoft_graph", :origin => "/user/new")
+ assert_redirected_to auth_path(:provider => "microsoft", :origin => "/user/new")
post response.location
assert_response :redirect
- assert_redirected_to auth_success_path(:provider => "microsoft_graph")
+ assert_redirected_to auth_success_path(:provider => "microsoft")
follow_redirect!
assert_response :redirect
assert_redirected_to "/user/terms"
:params => { :user => { :email => new_email,
:email_confirmation => new_email,
:display_name => display_name,
- :auth_provider => "microsoft_graph",
+ :auth_provider => "microsoft",
:auth_uid => "123454321",
:pass_crypt => password,
:pass_crypt_confirmation => password },
ActionMailer::Base.deliveries.clear
end
- def test_user_create_microsoft_graph_failure
- OmniAuth.config.mock_auth[:microsoft_graph] = :connection_failed
+ def test_user_create_microsoft_failure
+ OmniAuth.config.mock_auth[:microsoft] = :connection_failed
- new_email = "newtester-microsoft_graph2@osm.org"
- display_name = "new_tester-microsoft_graph2"
+ new_email = "newtester-microsoft2@osm.org"
+ display_name = "new_tester-microsoft2"
assert_difference("User.count", 0) do
assert_difference("ActionMailer::Base.deliveries.size", 0) do
perform_enqueued_jobs do
:params => { :user => { :email => new_email,
:email_confirmation => new_email,
:display_name => display_name,
- :auth_provider => "microsoft_graph",
+ :auth_provider => "microsoft",
:pass_crypt => "",
:pass_crypt_confirmation => "" } }
assert_response :redirect
- assert_redirected_to auth_path(:provider => "microsoft_graph", :origin => "/user/new")
+ assert_redirected_to auth_path(:provider => "microsoft", :origin => "/user/new")
post response.location
assert_response :redirect
- assert_redirected_to auth_success_path(:provider => "microsoft_graph")
+ assert_redirected_to auth_success_path(:provider => "microsoft")
follow_redirect!
assert_response :redirect
- assert_redirected_to auth_failure_path(:strategy => "microsoft_graph", :message => "connection_failed", :origin => "/user/new")
+ assert_redirected_to auth_failure_path(:strategy => "microsoft", :message => "connection_failed", :origin => "/user/new")
follow_redirect!
assert_response :redirect
follow_redirect!
ActionMailer::Base.deliveries.clear
end
- def test_user_create_microsoft_graph_redirect
- OmniAuth.config.add_mock(:microsoft_graph, :uid => "123454321")
+ def test_user_create_microsoft_redirect
+ OmniAuth.config.add_mock(:microsoft, :uid => "123454321")
- new_email = "redirect_tester_microsoft_graph@osm.org"
- display_name = "redirect_tester_microsoft_graph"
+ new_email = "redirect_tester_microsoft@osm.org"
+ display_name = "redirect_tester_microsoft"
# nothing special about this page, just need a protected page to redirect back to.
referer = "/traces/mine"
assert_difference("User.count") do
:params => { :user => { :email => new_email,
:email_confirmation => new_email,
:display_name => display_name,
- :auth_provider => "microsoft_graph",
+ :auth_provider => "microsoft",
:pass_crypt => "",
:pass_crypt_confirmation => "" },
:referer => referer }
assert_response :redirect
- assert_redirected_to auth_path(:provider => "microsoft_graph", :origin => "/user/new")
+ assert_redirected_to auth_path(:provider => "microsoft", :origin => "/user/new")
post response.location
assert_response :redirect
- assert_redirected_to auth_success_path(:provider => "microsoft_graph")
+ assert_redirected_to auth_success_path(:provider => "microsoft")
follow_redirect!
assert_response :redirect
assert_redirected_to "/user/terms"
:params => { :user => { :email => new_email,
:email_confirmation => new_email,
:display_name => display_name,
- :auth_provider => "microsoft_graph",
+ :auth_provider => "microsoft",
:auth_uid => "http://localhost:1123/new.tester",
:pass_crypt => "testtest",
:pass_crypt_confirmation => "testtest" },
assert_equal register_email.to.first, new_email
# Check that the confirm account url is correct
- confirm_regex = Regexp.new("/user/redirect_tester_microsoft_graph/confirm\\?confirm_string=([a-zA-Z0-9]*)")
+ confirm_regex = Regexp.new("/user/redirect_tester_microsoft/confirm\\?confirm_string=([a-zA-Z0-9]*)")
email_text_parts(register_email).each do |part|
assert_match confirm_regex, part.body.to_s
end
OmniAuth.config.mock_auth[:openid] = nil
OmniAuth.config.mock_auth[:google] = nil
OmniAuth.config.mock_auth[:facebook] = nil
- OmniAuth.config.mock_auth[:microsoft_graph] = nil
+ OmniAuth.config.mock_auth[:microsoft] = nil
OmniAuth.config.mock_auth[:github] = nil
OmniAuth.config.mock_auth[:wikipedia] = nil
OmniAuth.config.test_mode = false
assert_select "span.username", false
end
- def test_login_microsoft_graph_success
- user = create(:user, :auth_provider => "microsoft_graph", :auth_uid => "1234567890")
- OmniAuth.config.add_mock(:microsoft_graph, :uid => user.auth_uid)
+ def test_login_microsoft_success
+ user = create(:user, :auth_provider => "microsoft", :auth_uid => "1234567890")
+ OmniAuth.config.add_mock(:microsoft, :uid => user.auth_uid)
get "/login", :params => { :referer => "/history" }
assert_response :redirect
follow_redirect!
assert_response :success
assert_template "sessions/new"
- post auth_path(:provider => "microsoft_graph", :origin => "/login?referer=%2Fhistory", :referer => "/history")
+ post auth_path(:provider => "microsoft", :origin => "/login?referer=%2Fhistory", :referer => "/history")
assert_response :redirect
- assert_redirected_to auth_success_path(:provider => "microsoft_graph")
+ assert_redirected_to auth_success_path(:provider => "microsoft")
follow_redirect!
assert_response :redirect
follow_redirect!
assert_select "span.username", user.display_name
end
- def test_login_microsoft_graph_pending
- user = create(:user, :pending, :auth_provider => "microsoft_graph", :auth_uid => "1234567890")
- OmniAuth.config.add_mock(:microsoft_graph, :uid => user.auth_uid)
+ def test_login_microsoft_pending
+ user = create(:user, :pending, :auth_provider => "microsoft", :auth_uid => "1234567890")
+ OmniAuth.config.add_mock(:microsoft, :uid => user.auth_uid)
get "/login", :params => { :referer => "/history" }
assert_response :redirect
follow_redirect!
assert_response :success
assert_template "sessions/new"
- post auth_path(:provider => "microsoft_graph", :origin => "/login?referer=%2Fhistory", :referer => "/history")
+ post auth_path(:provider => "microsoft", :origin => "/login?referer=%2Fhistory", :referer => "/history")
assert_response :redirect
- assert_redirected_to auth_success_path(:provider => "microsoft_graph")
+ assert_redirected_to auth_success_path(:provider => "microsoft")
follow_redirect!
assert_response :redirect
follow_redirect!
assert_template "confirm"
end
- def test_login_microsoft_graph_suspended
- user = create(:user, :suspended, :auth_provider => "microsoft_graph", :auth_uid => "1234567890")
- OmniAuth.config.add_mock(:microsoft_graph, :uid => user.auth_uid)
+ def test_login_microsoft_suspended
+ user = create(:user, :suspended, :auth_provider => "microsoft", :auth_uid => "1234567890")
+ OmniAuth.config.add_mock(:microsoft, :uid => user.auth_uid)
get "/login", :params => { :referer => "/history" }
assert_response :redirect
follow_redirect!
assert_response :success
assert_template "sessions/new"
- post auth_path(:provider => "microsoft_graph", :origin => "/login?referer=%2Fhistory", :referer => "/history")
+ post auth_path(:provider => "microsoft", :origin => "/login?referer=%2Fhistory", :referer => "/history")
assert_response :redirect
- assert_redirected_to auth_success_path(:provider => "microsoft_graph")
+ assert_redirected_to auth_success_path(:provider => "microsoft")
follow_redirect!
assert_response :redirect
follow_redirect!
end
end
- def test_login_microsoft_graph_blocked
- user = create(:user, :auth_provider => "microsoft_graph", :auth_uid => "1234567890")
+ def test_login_microsoft_blocked
+ user = create(:user, :auth_provider => "microsoft", :auth_uid => "1234567890")
create(:user_block, :needs_view, :user => user)
- OmniAuth.config.add_mock(:microsoft_graph, :uid => user.auth_uid)
+ OmniAuth.config.add_mock(:microsoft, :uid => user.auth_uid)
get "/login", :params => { :referer => "/history" }
assert_response :redirect
follow_redirect!
assert_response :success
assert_template "sessions/new"
- post auth_path(:provider => "microsoft_graph", :origin => "/login?referer=%2Fhistory", :referer => "/history")
+ post auth_path(:provider => "microsoft", :origin => "/login?referer=%2Fhistory", :referer => "/history")
assert_response :redirect
- assert_redirected_to auth_success_path(:provider => "microsoft_graph")
+ assert_redirected_to auth_success_path(:provider => "microsoft")
follow_redirect!
assert_response :redirect
follow_redirect!
assert_select "span.username", user.display_name
end
- def test_login_microsoft_graph_connection_failed
- OmniAuth.config.mock_auth[:microsoft_graph] = :connection_failed
+ def test_login_microsoft_connection_failed
+ OmniAuth.config.mock_auth[:microsoft] = :connection_failed
get "/login", :params => { :referer => "/history" }
assert_response :redirect
follow_redirect!
assert_response :success
assert_template "sessions/new"
- post auth_path(:provider => "microsoft_graph", :origin => "/login?referer=%2Fhistory", :referer => "/history")
+ post auth_path(:provider => "microsoft", :origin => "/login?referer=%2Fhistory", :referer => "/history")
assert_response :redirect
- assert_redirected_to auth_success_path(:provider => "microsoft_graph")
+ assert_redirected_to auth_success_path(:provider => "microsoft")
follow_redirect!
assert_response :redirect
- assert_redirected_to auth_failure_path(:strategy => "microsoft_graph", :message => "connection_failed", :origin => "/login?referer=%2Fhistory")
+ assert_redirected_to auth_failure_path(:strategy => "microsoft", :message => "connection_failed", :origin => "/login?referer=%2Fhistory")
follow_redirect!
assert_response :redirect
follow_redirect!
assert_select "span.username", false
end
- def test_login_microsoft_graph_invalid_credentials
- OmniAuth.config.mock_auth[:microsoft_graph] = :invalid_credentials
+ def test_login_microsoft_invalid_credentials
+ OmniAuth.config.mock_auth[:microsoft] = :invalid_credentials
get "/login", :params => { :referer => "/history" }
assert_response :redirect
follow_redirect!
assert_response :success
assert_template "sessions/new"
- post auth_path(:provider => "microsoft_graph", :origin => "/login?referer=%2Fhistory", :referer => "/history")
+ post auth_path(:provider => "microsoft", :origin => "/login?referer=%2Fhistory", :referer => "/history")
assert_response :redirect
- assert_redirected_to auth_success_path(:provider => "microsoft_graph")
+ assert_redirected_to auth_success_path(:provider => "microsoft")
follow_redirect!
assert_response :redirect
- assert_redirected_to auth_failure_path(:strategy => "microsoft_graph", :message => "invalid_credentials", :origin => "/login?referer=%2Fhistory")
+ assert_redirected_to auth_failure_path(:strategy => "microsoft", :message => "invalid_credentials", :origin => "/login?referer=%2Fhistory")
follow_redirect!
assert_response :redirect
follow_redirect!
assert_select "span.username", false
end
- def test_login_microsoft_graph_unknown
- OmniAuth.config.add_mock(:microsoft_graph, :uid => "987654321")
+ def test_login_microsoft_unknown
+ OmniAuth.config.add_mock(:microsoft, :uid => "987654321")
get "/login", :params => { :referer => "/history" }
assert_response :redirect
follow_redirect!
assert_response :success
assert_template "sessions/new"
- post auth_path(:provider => "microsoft_graph", :origin => "/login?referer=%2Fhistory", :referer => "/history")
+ post auth_path(:provider => "microsoft", :origin => "/login?referer=%2Fhistory", :referer => "/history")
assert_response :redirect
- assert_redirected_to auth_success_path(:provider => "microsoft_graph")
+ assert_redirected_to auth_success_path(:provider => "microsoft")
follow_redirect!
assert_response :redirect
follow_redirect!