]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/bugs/notifyemail_fails_with_some_openid_providers.mdwn
Merge branch 'ready/postform-no'
[git.ikiwiki.info.git] / doc / bugs / notifyemail_fails_with_some_openid_providers.mdwn
index 9f968b5253c55f713595488c8a9bcb7d6505b2d9..dd5016619588e2d177efcdc7e521187b876d5c24 100644 (file)
@@ -1,3 +1,5 @@
+[[!template  id=gitbranch branch=anarcat/dev/openid_email author="[[anarcat]]"]]
+
 This bug affects [[plugins/notifyemail]] but is probably caused more by [[plugins/openid]]. When using OpenID to login to a site, no email notification is sent to the user (pagespec set to `*`) when a modification is done on the wiki. I believe this is because the OpenID plugin assumes the email comes from the OpenID provider - which is not necessarily going to succeed if, for privacy reason, the OpenID provider refuses to transmit the email to ikiwiki.
 
 In the OpenID plugin, the email is actually fetched when authenticating and is stored in the session, like so:
@@ -56,23 +58,34 @@ sub formbuilder_setup (@) {
 
 I believe this could be worked around simply by re-enabling that field and allowing the user to specify an email there by hand, making a note that the OpenID provider's email is used by default.
 
-Here's the dumbest [[!taglink patch]] that actually fixes the problem for me:
-
-[[!format diff """
-diff --git a/IkiWiki/Plugin/openid.pm b/IkiWiki/Plugin/openid.pm
-index e3b9982..df87ba3 100644
---- a/IkiWiki/Plugin/openid.pm
-+++ b/IkiWiki/Plugin/openid.pm
-@@ -104,7 +104,6 @@ sub formbuilder_setup (@) {
-                       size => 1, force => 1,
-                       fieldset => "login",
-                       comment => $session->param("name"));
--              $form->field(name => "email", type => "hidden");
-       }
- }
-"""]]
+The dumbest [[!taglink patch]] that actually fixes the problem for me is in the branch mentionned above.
 
 It would probably be better to add a comment on the field as indicated above, but it's a good proof of concept.
 
-Any other ideas?
+Any other ideas? --[[anarcat]]
+
+> Note: it seems that my email *is* given by my OpenID provider, no idea why this is not working, but the fix proposed in my branch works. --[[anarcat]]
+
+>> Note: this is one of two patches i need to apply at every upgrade. The other being [[can__39__t_upload_a_simple_png_image:_prohibited_by_allowed__95__attachments___40__file_MIME_type_is_application__47__octet-stream...]]. --[[anarcat]]
+
+>>> Is there any sort of check that the owner of the given email address
+>>> wants to receive email from us, or way for the owner of that email
+>>> address to stop getting the emails?
+>>>
+>>> With passwordauth, if someone maliciously subscribes my email
+>>> address to high-traffic pages or something (by using it as the
+>>> email address of their wiki login), I can at least use
+>>> password-recovery to hijack their account and unsubscribe myself.
+>>> If they're signing in with an OpenID not associated with my
+>>> email address and then changing the email address in the userdb
+>>> to point to me, I don't think I can do that.
+>>>
+>>> With OpenID, I think we're just trusting that the OpenID provider
+>>> wouldn't give us an unverified email address, which also seems
+>>> a little unwise.
+>>>
+>>> It might be better to give ikiwiki a concept of verifying an
+>>> email address (the usual send-magic-token flow) and only be
+>>> willing to send notifications to a verified address?
+>>>
+>>> --[[smcv]]