[openstreetmap/openstreetmap-website] Facebook deletion callback (PR #7093)
Pablo Brasero
notifications at github.com
Mon Jun 29 09:30:30 UTC 2026
@pablobm commented on this pull request.
> + create(:user, :auth_provider => "facebook", :auth_uid => "12345")
+
+ payload = Base64.urlsafe_encode64(
+ JSON.generate(
+ :algorithm => "HMAC-SHA256",
+ :expires => Time.now.to_i + 3600,
+ :issued_at => Time.now.to_i,
+ :user_id => "12345"
+ )
+ )
+ signature = OpenSSL::HMAC.digest("SHA256", "invalid secret", payload)
+ encoded_signature = Base64.urlsafe_encode64(signature)
+ signed_request = [encoded_signature, payload].join(".")
+
+ post auth_delete_path(:provider => "facebook"), :params => { :signed_request => signed_request }
+ assert_response :bad_request
Also worth checking that there were no changes to the user:
```suggestion
assert_response :bad_request
user.reload
assert_equal "facebook", user.auth_provider
assert_equal "12345", user.auth_uid
```
> @@ -233,9 +233,16 @@
get "/forgot-password.html", :to => redirect(:path => "/user/forgot-password")
# omniauth
- get "/auth/failure" => "users#auth_failure"
- match "/auth/:provider/callback" => "users#auth_success", :via => [:get, :post], :as => :auth_success
- match "/auth/:provider" => "users#auth", :via => [:post, :patch], :as => :auth
+ scope "/auth", :as => :auth do
+ get "/failure" => "users#auth_failure"
+
+ scope ":provider" do
+ match "/callback" => "users#auth_success", :via => [:get, :post], :as => :success
+ match "" => "users#auth", :via => [:post, :patch]
+
+ resource :delete, :only => [:show, :create], :module => "accounts", :controller => "auth_deletions"
In the spirit of resources as nouns, how about `:deletion`?
```suggestion
resource :deletion, :only => [:show, :create], :module => "accounts", :controller => "auth_deletions"
```
Or alternatively in the plural:
```suggestion
resource :deletions, :only => [:show, :create], :module => "accounts", :controller => "auth_deletions"
```
This second one might look a bit odd, mixing singular and plural, but arguably gives us the most "pure" noun resource as the route does not refer to any one specific deletion.
--
Reply to this email directly or view it on GitHub:
https://github.com/openstreetmap/openstreetmap-website/pull/7093#pullrequestreview-4590387813
You are receiving this because you are subscribed to this thread.
Message ID: <openstreetmap/openstreetmap-website/pull/7093/review/4590387813 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/rails-dev/attachments/20260629/f12d5c9a/attachment.htm>
More information about the rails-dev
mailing list