Proteger URLs de clipes de papel apenas para páginas seguras

Estou tentando encontrar a melhor maneira de proteger URLs de clipes de papel, mas apenas para páginas seguras.

Por exemplo, a página inicial, que mostra imagens armazenadas no S3, éhttp://mydomain.com e o URL da imagem éhttp://s3.amazonaws.com/mydomainphotos/89/thisimage.JPG?1284314856.

Eu tenho páginas seguras comohttps://mydomain.com/users/my_stuff/49 que possui imagens armazenadas no S3, mas o protocolo S3 é http e não https, então o usuário recebe um aviso do navegador dizendo que alguns elementos da página não são seguros, blá blá blá.

Eu sei que posso especificar: s3_protocol no modelo, mas isso torna tudo seguro, mesmo quando não é necessário. Portanto, estou procurando a melhor maneira de alterar o protocolo para https em tempo real, apenas para páginas seguras.

Uma maneira (provavelmente ruim) seria criar um novo método de URL, como:

def custom_url(style = default_style, ssl = false)
  ssl ? self.url(style).gsub('http', 'https') : self.url(style)
end

Uma coisa a observar é que estou usando o plugin ssl_requirement, portanto, pode haver uma maneira de vinculá-lo a isso.

Tenho certeza de que há uma maneira simples e padrão de fazer isso que estou ignorando, mas não consigo encontrá-lo.

questionAnswers(4)

yourAnswerToTheQuestion