Integra IDer con OpenID Connect

IDer è un provider OpenID Connect standard. Per aggiungere il pulsante “Accedi con IDer” a Joomla, Drupal, Magento, PrestaShop o a un’applicazione su misura non serve un plugin dedicato: basta un modulo OpenID Connect generico, configurato con i dati del tuo account partner.

L’accesso resta quello di IDer: il cliente clicca il pulsante, scansiona il QR code con l’app IDer, sceglie quali dati condividere e torna sul tuo sito già autenticato. Chi non ha ancora l’app viene guidato a scaricarla. Per WordPress e WooCommerce c’è il plugin ufficiale IDer Login.

1. Crea il tuo accesso partner2. I dati da inserire3. Le piattaforme4. I dati del cliente5. Problemi frequenti

1. Crea il tuo accesso partner

  1. Apri partner.ider.com e accedi scansionando il QR code con l’app IDer. Al primo accesso viene creata l’area della tua azienda.
  2. Vai in Login Button e premi Edit.
  3. In Choose site type scegli Website (anche per Drupal e Magento, se usi un modulo OpenID Connect generico).
  4. In The requested information scegli i dati da chiedere al cliente e se sono obbligatori o facoltativi (vedi il punto 4).
  5. Inserisci i Termini e condizioni e la Privacy policy del tuo servizio: il cliente li vede nell’app prima di dare il consenso.
  6. In Set the callback URL inserisci l’indirizzo di ritorno che ti indica il modulo del tuo sito (vedi il punto 3). Deve essere identico, carattere per carattere, compreso https://.
  7. Scegli l’aspetto del pulsante e salva. Nel riepilogo trovi Client Id, Client Secret e Scope Name: ti servono nel passo successivo. Tieni il Client Secret riservato.
Ti serve un dato che non è nell’elenco, per esempio un codice cliente o una domanda specifica? Scrivici dal modulo di contatto: il team IDer può creare campi personalizzati per la tua azienda.

2. I dati da inserire nel modulo

Sono gli stessi per ogni piattaforma. Se il modulo supporta la discovery automatica, basta l’indirizzo del provider: gli altri indirizzi li legge da solo.

Campo del moduloValore
Issuer / Provider URLhttps://oid.ider.com/core
Discovery / Well-known URLhttps://oid.ider.com/core/.well-known/openid-configuration
Client IDIl Client Id del Login Button
Client SecretIl Client Secret del Login Button
Scopeopenid seguito, con uno spazio, dallo Scope Name del Login Button. Esempio: openid 1a2b3c4d-…. Non aggiungere altri scope come email o profile: i dati arrivano in base a quello che hai scelto nel portale.
Response type / Flussocode (Authorization Code). PKCE con S256 è supportato.
Autenticazione del clientclient_secret_post oppure client_secret_basic
Firma dei tokenRS256

Se il modulo chiede gli indirizzi uno per uno:

EndpointIndirizzo
Authorizationhttps://oid.ider.com/core/connect/authorize
Tokenhttps://oid.ider.com/core/connect/token
Userinfohttps://oid.ider.com/core/connect/userinfo
Logout (end session)https://oid.ider.com/core/connect/endsession
JWKS (chiavi pubbliche)https://oid.ider.com/core/.well-known/jwks

3. Le piattaforme

Ogni modulo mostra nella sua configurazione l’indirizzo di ritorno (Redirect URL o Callback URL): copialo nel campo Set the callback URL del portale partner. Gli esempi qui sotto indicano dove trovarlo; il valore esatto dipende dal tuo sito.

Drupal 10 e 11

  1. Installa il modulo ufficiale OpenID Connect (composer require drupal/openid_connect) e attivalo.
  2. Vai in Configurazione → Persone → OpenID Connect e aggiungi un client di tipo Generic OAuth 2.0 con nome macchina, per esempio, ider.
  3. Inserisci Client ID, Client Secret, gli endpoint del punto 2 e lo scope.
  4. Copia il Redirect URL mostrato dal modulo (del tipo https://tuosito.it/openid-connect/ider) nel portale partner.

Joomla 4, 5 e 6

  1. Installa un’estensione OAuth / OpenID Connect client dalla Joomla Extensions Directory, per esempio miniOrange OAuth Client, che ha un piano gratuito.
  2. Crea un’applicazione personalizzata (Custom OpenID Connect) e inserisci i dati del punto 2.
  3. Copia il Callback URL indicato dall’estensione nel portale partner.

Magento 2 / Adobe Commerce

  1. Installa un’estensione OpenID Connect per i clienti del negozio, per esempio miniOrange OAuth/OIDC SSO dal Commerce Marketplace, oppure il pacchetto open source dmlab/module-customer-sso.
  2. Configura un provider OpenID Connect generico con i dati del punto 2 e collega i campi del cliente (nome, cognome, email) come al punto 4.
  3. Copia il Callback URL dell’estensione nel portale partner.

PrestaShop 1.7, 8 e 9

  1. Installa un modulo OAuth / OpenID Connect client, per esempio miniOrange OAuth Client per PrestaShop.
  2. Aggiungi un provider personalizzato con i dati del punto 2 e imposta la corrispondenza dei campi (obbligatoria in molti moduli): email, nome, cognome.
  3. Copia il Callback URL del modulo nel portale partner.

Applicazioni su misura

Usa una libreria OpenID Connect certificata per il tuo linguaggio, per esempio Microsoft.AspNetCore.Authentication.OpenIdConnect (.NET), openid-client (Node.js), Authlib (Python), jumbojett/openid-connect-php o Laravel Socialite con un provider OpenID Connect (PHP). Configura il flusso Authorization Code con l’indirizzo di discovery e lo scope del punto 2.

4. I dati del cliente

Dopo il consenso, IDer restituisce i dati che hai scelto nel portale. Questi sono i nomi dei campi (claim) da collegare ai campi del profilo cliente della tua piattaforma:

Claim IDerSignificatoCampo tipico della piattaforma
subIdentificativo univoco e stabile del clienteID esterno / identificativo utente
emailEmailEmail (spesso usata per collegare un account esistente)
given_nameNomeNome
family_nameCognomeCognome
preferred_usernameNome utenteUsername
phone_numberTelefonoTelefono
birthdate, gender, nationalityData di nascita, sesso, nazionalitàCampi del profilo
addressIndirizzo, con street_address, locality, region, postal_code, countryIndirizzo di fatturazione o spedizione

Nel portale puoi chiedere anche altri dati, divisi per categoria: documenti (codice fiscale, tessera sanitaria, carta d’identità, passaporto), indirizzi di residenza, spedizione e fatturazione, famiglia, lavoro, veicoli (targa, patente, chilometri annui), taglie (maglia, pantaloni, scarpe), domande aperte e campi personalizzati creati dal team IDer. Arrivano con il loro nome, per esempio license_plate per la targa.

5. Problemi frequenti

Cosa succedeCosa controllare
Dopo il clic IDer mostra una pagina ErrorL’indirizzo di ritorno inviato dal modulo non è identico a quello del portale partner: controlla https, il dominio con o senza www, la barra finale e il percorso. Controlla anche il Client ID.
Il login riesce ma mancano dati (per esempio l’email)Lo scope deve contenere lo Scope Name del Login Button, e il dato deve essere tra quelli richiesti nel portale.
Errore sul token o “invalid client”Client Secret sbagliato o metodo di autenticazione del client diverso da client_secret_post / client_secret_basic.
Errore sulla validità del token (scaduto, “not yet valid”)L’orologio del server del sito non è sincronizzato: attiva la sincronizzazione NTP.
Viene creato un nuovo account invece di usare quello esistenteImposta il modulo per collegare gli account tramite email, oppure salva il sub di IDer sul profilo del cliente.
Il cliente non riesce a completare l’accessoDeve avere l’app IDer aggiornata e confermare la richiesta nell’app.

Oltre al pulsante: le campagne

Dal portale partner puoi creare anche campagne per acquisire nuovi clienti: un QR code digitale o un pulsante da usare su social, newsletter e sito, oppure un QR code stampabile da mettere su volantini, giornali, TV o in vetrina. Chi lo scansiona con l’app IDer condivide i dati che hai scelto e arriva sul tuo sito o su una pagina creata da IDer per la campagna.

Hai bisogno di aiuto? Scrivici dal modulo di contatto.