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
- Apri partner.ider.com e accedi scansionando il QR code con l’app IDer. Al primo accesso viene creata l’area della tua azienda.
- Vai in Login Button e premi Edit.
- In Choose site type scegli Website (anche per Drupal e Magento, se usi un modulo OpenID Connect generico).
- In The requested information scegli i dati da chiedere al cliente e se sono obbligatori o facoltativi (vedi il punto 4).
- Inserisci i Termini e condizioni e la Privacy policy del tuo servizio: il cliente li vede nell’app prima di dare il consenso.
- 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://. - 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.
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 modulo | Valore |
|---|---|
| Issuer / Provider URL | https://oid.ider.com/core |
| Discovery / Well-known URL | https://oid.ider.com/core/.well-known/openid-configuration |
| Client ID | Il Client Id del Login Button |
| Client Secret | Il Client Secret del Login Button |
| Scope | openid 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 / Flusso | code (Authorization Code). PKCE con S256 è supportato. |
| Autenticazione del client | client_secret_post oppure client_secret_basic |
| Firma dei token | RS256 |
Se il modulo chiede gli indirizzi uno per uno:
| Endpoint | Indirizzo |
|---|---|
| Authorization | https://oid.ider.com/core/connect/authorize |
| Token | https://oid.ider.com/core/connect/token |
| Userinfo | https://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
- Installa il modulo ufficiale OpenID Connect (
composer require drupal/openid_connect) e attivalo. - Vai in Configurazione → Persone → OpenID Connect e aggiungi un client di tipo Generic OAuth 2.0 con nome macchina, per esempio,
ider. - Inserisci Client ID, Client Secret, gli endpoint del punto 2 e lo scope.
- Copia il Redirect URL mostrato dal modulo (del tipo
https://tuosito.it/openid-connect/ider) nel portale partner.
Joomla 4, 5 e 6
- Installa un’estensione OAuth / OpenID Connect client dalla Joomla Extensions Directory, per esempio miniOrange OAuth Client, che ha un piano gratuito.
- Crea un’applicazione personalizzata (Custom OpenID Connect) e inserisci i dati del punto 2.
- Copia il Callback URL indicato dall’estensione nel portale partner.
Magento 2 / Adobe Commerce
- 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. - 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.
- Copia il Callback URL dell’estensione nel portale partner.
PrestaShop 1.7, 8 e 9
- Installa un modulo OAuth / OpenID Connect client, per esempio miniOrange OAuth Client per PrestaShop.
- Aggiungi un provider personalizzato con i dati del punto 2 e imposta la corrispondenza dei campi (obbligatoria in molti moduli): email, nome, cognome.
- 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 IDer | Significato | Campo tipico della piattaforma |
|---|---|---|
sub | Identificativo univoco e stabile del cliente | ID esterno / identificativo utente |
email | Email (spesso usata per collegare un account esistente) | |
given_name | Nome | Nome |
family_name | Cognome | Cognome |
preferred_username | Nome utente | Username |
phone_number | Telefono | Telefono |
birthdate, gender, nationality | Data di nascita, sesso, nazionalità | Campi del profilo |
address | Indirizzo, con street_address, locality, region, postal_code, country | Indirizzo 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 succede | Cosa controllare |
|---|---|
| Dopo il clic IDer mostra una pagina Error | L’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 esistente | Imposta 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’accesso | Deve 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.