Configurare OAuth in Smart Login
Smart Login usa OAuth per autenticare l’identita presso un provider esterno e aprire una sessione WordPress. Non importa password social nel sito. Ogni sito deve avere credenziali proprie e una callback HTTPS registrata esattamente.
Prima di iniziare
Sezione intitolata “Prima di iniziare”- Apri Smart Login > Impostazioni > Identity / OAuth.
- Copia la callback mostrata nel riquadro del provider. Non ricostruirla manualmente.
- Decidi se consentire la creazione automatica degli utenti WordPress.
- Imposta ruolo e domini consentiti nel riquadro Provisioning utenti.
- Conserva i secret fuori dal repository. In produzione sono consigliate le costanti in
wp-config.php.
Parametri richiesti
Sezione intitolata “Parametri richiesti”| Provider | Parametri da copiare nel plugin | Portale di origine |
|---|---|---|
| Client ID, Client Secret | Google Cloud Console, client OAuth Web | |
| Microsoft | Application Client ID, Client Secret, Tenant | Microsoft Entra admin center, App registrations |
| GitHub | Client ID, Client Secret | GitHub, Settings, Developer settings, OAuth Apps |
| Apple | Services ID, Team ID, Key ID, chiave privata P8 | Apple Developer, Certificates, Identifiers & Profiles |
- Apri Google Cloud Console e seleziona o crea un progetto.
- Configura la schermata consenso OAuth e il pubblico dell’applicazione.
- In APIs & Services > Credentials crea un client Web application.
- Incolla la callback di Smart Login tra gli Authorized redirect URIs.
- Copia Client ID e Client Secret nel plugin, salva e abilita Google.
La callback ha forma:
https://tuosito.it/wp-admin/admin-post.php?action=sslpp_google_callbackIl redirect deve coincidere esattamente, inclusi HTTPS, dominio e percorso. Riferimento: OAuth 2.0 per applicazioni Web.
Microsoft
Sezione intitolata “Microsoft”- Apri Microsoft Entra admin center e vai in App registrations > New registration.
- Scegli i tipi di account ammessi.
- In Authentication aggiungi una piattaforma Web e incolla la callback di Smart Login.
- In Certificates & secrets crea un client secret e copiane subito il Value, non il Secret ID.
- Copia nel plugin l’Application (client) ID, il secret e il tenant.
La callback ha forma:
https://tuosito.it/wp-admin/admin-post.php?action=sslpp_oauth_callback_microsoftUsa common per account personali e organizzativi, organizations per soli account di lavoro, oppure il Directory (tenant) ID per limitare l’accesso a una singola organizzazione. Riferimento: registrazione e login Web Microsoft.
- In GitHub apri Settings > Developer settings > OAuth Apps.
- Seleziona New OAuth App e inserisci nome e Homepage URL.
- Incolla la callback di Smart Login in Authorization callback URL.
- Registra l’app, copia Client ID e genera un nuovo Client Secret.
- Inserisci entrambi nel plugin, salva e abilita GitHub.
La callback ha forma:
https://tuosito.it/wp-admin/admin-post.php?action=sslpp_oauth_callback_githubEvita callback wildcard: una callback esatta riduce l’esposizione del codice di autorizzazione. Riferimento: creare una OAuth App GitHub.
Apple richiede l’iscrizione all’Apple Developer Program e piu passaggi degli altri provider.
- Abilita Sign in with Apple su un App ID primario.
- Crea un Services ID, abilita Sign in with Apple e associa il sito all’App ID primario.
- Registra dominio e Return URL copiando la callback mostrata da Smart Login.
- Crea una chiave con Sign in with Apple, scarica il file
.p8e annota il Key ID. - Recupera il Team ID dall’account sviluppatore.
- Inserisci Services ID, Team ID, Key ID e contenuto completo del file
.p8nel plugin.
La Return URL ha forma:
https://tuosito.it/wp-admin/admin-post.php?action=sslpp_oauth_callback_appleIl file .p8 viene scaricato una sola volta: conservalo in un secret manager. Riferimenti: configurazione Web Sign in with Apple e creazione della chiave privata.
Creazione e associazione utenti
Sezione intitolata “Creazione e associazione utenti”Il toggle Crea utente WordPress automaticamente decide se un’identita verificata e non ancora presente puo generare un nuovo account. Se e disattivato, il provider funziona solo per identita gia associate o per utenti esistenti secondo la policy configurata.
Per un sito pubblico usa un ruolo privo di privilegi, normalmente Subscriber o Customer. Non e possibile assegnare automaticamente Administrator. L’associazione automatica per email verificata e comoda, ma va attivata solo quando il dominio e la governance degli account sono affidabili.
Collaudo prima della pubblicazione
Sezione intitolata “Collaudo prima della pubblicazione”- Salva la configurazione e apri Configurazione guidata.
- Verifica che il provider risulti pronto e che la callback sia raggiungibile.
- Prova una login reale in una finestra privata.
- Verifica utente creato o associato, ruolo assegnato e redirect finale.
- Prova anche rifiuto del consenso, email non consentita e account non registrato.
- Mantieni almeno un accesso amministrativo locale di recupero durante il collaudo.
Errori frequenti
Sezione intitolata “Errori frequenti”- Configurazione incompleta: manca un campo o il secret e vuoto.
- redirect_uri_mismatch: la callback registrata non coincide con quella mostrata dal plugin.
- Accesso negato: dominio email, registrazione o policy utente non consentono il login.
- Pulsante disabilitato: il provider e stato abilitato prima di completare le credenziali.
- Apple token non valido: Services ID, Team ID, Key ID o chiave P8 non appartengono alla stessa configurazione.
Gestione dei secret
Sezione intitolata “Gestione dei secret”Le esportazioni JSON non includono i secret. In wp-config.php sono disponibili:
define('SSLPP_GOOGLE_CLIENT_SECRET', '...');define('SSLPP_MICROSOFT_CLIENT_SECRET', '...');define('SSLPP_GITHUB_CLIENT_SECRET', '...');define('SSLPP_APPLE_PRIVATE_KEY', "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----");Non inserire queste costanti in repository pubblici e ruota immediatamente una credenziale esposta.
