In GLPI 11 il catalogo dei servizi ha smesso di essere un plugin ed è diventato parte del core - ma ciò che fa naufragare la maggior parte delle implementazioni non è la mancanza di una funzione, bensì un modulo pubblicato che nessun utente riesce a vedere. Nella gestione di ambienti GLPI di clienti, questo è il primo sintomo che emerge: "il catalogo è vuoto" quando, nel database, i moduli esistono e sono attivi. Questa guida mostra come costruire un servizio dall'inizio alla fine con le funzioni native e come diagnosticare le insidie prima che l'utente si lamenti.
In GLPI 11 il catalogo è nativo - e ha un proprio indirizzo
Fino a GLPI 10, catalogo dei servizi era sinonimo di FormCreator. In GLPI 11 i moduli sono entrati nel core e, con essi, è arrivato un vero Catalogo dei Servizi: una pagina self-service, servita dalla rotta /ServiceCatalog, dove l'utente naviga tra i servizi organizzati per categoria e apre il modulo giusto. I moduli si trovano in Amministrazione > Moduli e ogni servizio del catalogo è un modulo con quattro pezzi che devono essere allineati:
- Modulo (
glpi_forms_forms): il servizio in sé, con nome, descrizione e categoria. - Domande (
glpi_forms_questions): i campi che l'utente compila, con obbligatorietà e condizioni. - Controllo di accesso (
glpi_forms_accesscontrols_formaccesscontrols): chi vede il servizio nel catalogo. - Destinazione (
glpi_forms_destinations_formdestinations): ciò che viene creato all'invio - un ticket, un cambiamento o un problema.
Costruire un servizio dall'inizio alla fine
L'ordine conta. Saltare la scheda Controllo di accesso è l'errore che genera più rilavorazione. Per ogni servizio:
- Crea il modulo e associalo a una categoria snella (al massimo due livelli;
glpi_forms_categoriesè un albero, e un albero profondo diventa un labirinto). - Aggiungi solo le domande che userai davvero nella gestione. Un bel campo che nessuno legge sul ticket è attrito per l'utente.
- Configura il Controllo di accesso: la strategia
AllowListlimita il servizio a profili, gruppi o utenti;DirectAccessgenera un link diretto (utile per un fornitore esterno). Senza una politica di accesso attiva, il modulo non appare nel catalogo. - Definisci la Destinazione: l'itemtype
FormDestinationTicketcrea un ticket; esistono ancheFormDestinationChangeeFormDestinationProblem. Nella destinazione mappi la categoria ITIL, il gruppo responsabile e il richiedente dell'elemento generato. - Attiva il modulo (
is_active) e provalo con un utente self-service reale, non con il tuo account amministratore.
L'insidia che fa "sparire" il catalogo
Nel supporto, il ticket ricorrente è "ho pubblicato il servizio e l'utente non lo vede". Nella quasi totalità dei casi la causa è la stessa: il modulo ha is_active = 1, ma non ha nessuna politica di Controllo di accesso attiva. GLPI 11 tratta visibilità e pubblicazione come cose separate - pubblicare non basta, serve almeno una AllowList o DirectAccess attiva. E GLPI non emette alcun avviso: per il tecnico il modulo è "online", per l'utente il catalogo è vuoto. Questa è la prima query che eseguiamo in un onboarding di supporto, prima di discutere la tassonomia:
-- Moduli PUBBLICATI che NON appaiono nel catalogo self-service:
-- sono attivi (is_active=1) ma senza NESSUNA politica di accesso attiva.
-- Esistono, contano nel totale e sono invisibili per l'utente finale.
SELECT f.id, f.name, f.usage_count
FROM glpi_forms_forms f
LEFT JOIN glpi_forms_accesscontrols_formaccesscontrols ac
ON ac.forms_forms_id = f.id
AND ac.is_active = 1
WHERE f.is_active = 1
AND f.is_deleted = 0
AND f.is_draft = 0
AND ac.id IS NULL
ORDER BY f.usage_count DESC;
Un dettaglio che morde solo chi ha migrato davvero: portando i moduli di FormCreator nel core di GLPI 11, la visibilità per profilo di FormCreator non diventa automaticamente una AllowList. Il modulo arriva attivo, ma senza politica di accesso - cioè invisibile. Abbiamo verificato cataloghi appena migrati con decine di servizi in questo limbo, e il cliente giurava che "la migrazione ha perso i moduli". Non li ha persi: erano lì, solo senza nessuno che potesse vederli.
Vista cliente vs vista tecnica: dove vive ciascuna
Il catalogo ha due livelli e, in GLPI 11, si trovano in punti diversi del modulo:
- La vista cliente vive nella scheda Catalogo dei servizi (titolo, descrizione amichevole, categoria, illustrazione) e nel Controllo di accesso (chi vede). È ciò che appare su
/ServiceCatalog. - La vista tecnica vive nella Destinazione: categoria ITIL, gruppo tecnico e richiedente del ticket generato. Lo SLA non vive sul modulo - viene applicato sul ticket creato, tramite una regola di business o la categoria ITIL.
L'errore comune qui è cercare di "mettere lo SLA sul modulo". Quel campo non esiste: il modulo crea solo l'elemento; è il ticket a portare la scadenza. La matrice che usiamo per decidere la configurazione di ogni servizio:
| Servizio del catalogo | Controllo di accesso | Destinazione (itemtype) | Da dove viene lo SLA |
|---|---|---|---|
| Richiedere accesso VPN (self-service) | AllowList: profilo Self-Service | FormDestinationTicket + categoria "Accessi" | Regola di business sulla categoria |
| Aprire una richiesta di cambiamento (solo tecnici) | AllowList: profilo Tecnico | FormDestinationChange | Flusso di cambiamento, non SLA di ticket |
| Modulo per un fornitore esterno | DirectAccess (link/token) | FormDestinationTicket + entità del fornitore | Regola per entità |
| Servizio in costruzione | Nessuna attiva | - | Invisibile - per scelta, mai per dimenticanza |
Misura per l'uso, non per la dimensione
Un buon catalogo non è un catalogo grande. Ogni modulo di GLPI 11 ha un contatore d'uso nativo (usage_count), incrementato a ogni invio - usalo per dare priorità e potare. Un servizio che nessuno attiva da mesi non fa che appesantire il menu e affondare quelli che contano. La query di potatura che eseguiamo nel nostro ciclo di revisione trimestrale:
-- Candidati alla potatura: pubblicati da oltre 90 giorni e mai usati.
-- Un menu snello aiuta l'utente a trovare prima il servizio giusto.
SELECT id, name, usage_count, date_creation
FROM glpi_forms_forms
WHERE is_active = 1
AND is_deleted = 0
AND usage_count = 0
AND date_creation < (NOW() - INTERVAL 90 DAY)
ORDER BY date_creation;
Inizia dai dieci servizi più richiesti, usa nomi che l'utente capisce ("Richiedere un portatile", non "Provisioning di asset") e rivedi il catalogo ogni trimestre con lo usage_count alla mano. È così che il catalogo smette di essere una vetrina statica e diventa la vera porta d'ingresso del service desk.
Hai bisogno di strutturare (o recuperare) un catalogo dei servizi in GLPI 11 con la visibilità sotto controllo e le destinazioni mappate al tuo flusso? Scopri i progetti di implementazione di NexTool.
Questo contenuto è stato prodotto con l'aiuto dell'intelligenza artificiale e revisionato dal team Nextool Solutions.