Patch #31022

Always use HTTPS when accessing gravatar.com

Added by Go MAEDA 10 days ago. Updated 8 days ago.

Status:ClosedStart date:
Priority:NormalDue date:
Assignee:Go MAEDA% Done:

0%

Category:UI
Target version:4.1.0

Description

Today it is recommended to use HTTPS when accessing websites, but Redmine accesses gravatar.com with HTTP if the Redmine instance is accessed with HTTP. This is because Redmine generates protocol-relative URLs for Gravatar images (#21855#note-2).

I think we don't have to switch the protocol to access gravatar.com depending on the protocol of the Redmine instance. It will be secure, and moreover, it may improve performance when there are a lot of icons on a single page because of HTTP/2 used in gravatar.com. With HTTP/2, clients can download images in parallel with a single TCP connection.

Index: lib/plugins/gravatar/lib/gravatar.rb
===================================================================
--- lib/plugins/gravatar/lib/gravatar.rb    (リビジョン 17938)
+++ lib/plugins/gravatar/lib/gravatar.rb    (作業コピー)
@@ -61,7 +61,7 @@

     # Returns the base Gravatar URL for the given email hash
     def gravatar_api_url(hash)
-      "//www.gravatar.com/avatar/#{hash}" 
+      "https://www.gravatar.com/avatar/#{hash}" 
     end

     # Return the gravatar URL for the given email address.

Associated revisions

Revision 17948
Added by Go MAEDA 8 days ago

Always use HTTPS when accessing gravatar.com (#31022).

Patch by Go MAEDA.

History

#1 Updated by Go MAEDA 10 days ago

  • Target version set to 4.1.0

#2 Updated by Go MAEDA 9 days ago

This updated patch is frozen string literals ready.

Index: lib/plugins/gravatar/lib/gravatar.rb
===================================================================
--- lib/plugins/gravatar/lib/gravatar.rb    (revision 17946)
+++ lib/plugins/gravatar/lib/gravatar.rb    (working copy)
@@ -1,3 +1,5 @@
+# frozen_string_literal: true
+
 require 'digest/md5'
 require 'cgi'

@@ -61,7 +63,7 @@

     # Returns the base Gravatar URL for the given email hash
     def gravatar_api_url(hash)
-      "//www.gravatar.com/avatar/#{hash}" 
+      'https://www.gravatar.com/avatar/' + hash.to_s
     end

     # Return the gravatar URL for the given email address.

#3 Updated by Go MAEDA 8 days ago

  • Status changed from New to Closed
  • Assignee set to Go MAEDA

Committed.

Also available in: Atom PDF