spid-laravel icon indicating copy to clipboard operation
spid-laravel copied to clipboard

SAML response validation error: The response was received at HTTP instead of HTTPS

Open desh901 opened this issue 4 years ago • 3 comments

Se la propria app è dietro un proxy che fa SSL offloading si verifica il seguente problema:

SAML response validation error: The response was received at http://myapp.local/spid/acs instead of https://myapp.local/spid/acs

Per risolverlo occorre settare proxyVars = true su php-saml. Putroppo la libreria non permette di configurare questo parametro da spid-auth.php.

Un workaround momentaneo che ho testato e risulta funzionante è modificare l'AppServiceProvider come segue:

use OneLogin\Saml2\Utils as SAMLUtils;

class AppServiceProvider extends ServiceProvider {
   
    public function boot() {
          SAMLUtils::setProxyVars(true);
          // Other stuff
    }

Sarebbe utile avere un parametro proxy_vars in spid-auth.php che aggiunga la seguente configurazione in fase di costruzione della richiesta di login.

desh901 avatar Apr 14 '20 16:04 desh901

Ciao @desh901, grazie per la segnalazione.

Quello che descrivi è sicuramente uno use case valido. Se php-saml già supporta questo scenario, l'aggiunta di un parametro da impostare mediante il file spid-auth.php mi sembra di facile implementazione.

Se riesci potresti contribuire con una PR per risolvere la issue?

pdavide avatar Apr 14 '20 17:04 pdavide

Ciao @pdavide,

Se trovo un po di tempo molto volentieri.

desh901 avatar Apr 14 '20 18:04 desh901

Ciao @pdavide, ho creato una PR per aggiungere una configurazione per il valore proxyVars. Se serve qualche aggiustamento, chiedi pure.

valeriogalano avatar May 24 '24 10:05 valeriogalano