Guida alla sicurezza
Scopri come implementare la sicurezza di livello aziendale per il tuo sistema di gestione delle licenze con best practice e misure di sicurezza.
Panoramica sulla sicurezza
La sicurezza è fondamentale nei sistemi di gestione delle licenze. Questa guida copre le misure di sicurezza complete per proteggere le tue licenze, i dati dei clienti e le operazioni aziendali.
Tratteremo i requisiti di crittografia, autenticazione, autorizzazione, monitoraggio e conformità per garantire che il tuo sistema di licenza sia sicuro e affidabile.
Pilastri della sicurezza
Protezione dei dati
- Crittografia end-to-end
- Archiviazione sicura dei dati
- Anonimizzazione dei dati
- Backup e ripristino
Controllo degli accessi
- Autenticazione a più fattori
- Controllo degli accessi basato sui ruoli
- Gestione delle chiavi API
- Gestione della sessione
Affermazione di licenza JWT (RS256)
Quando l'API Core è configurata con le chiavi di firma, l'operazione ha esito positivo POST /v1/licenses/verify E
POST /v1/licenses/validate-hardware le risposte possono includere
license_token (un JWT), license_token_expires_at, E
license_jwks_uri. Gli integratori verificano il JWT non in linea utilizzando le chiavi pubbliche di
GET /v1/licenses/jwks (JWKS). Non spedire mai le API privato chiave di firma all'interno di app desktop, mobili o browser.
Asimmetrico solo nelle app client: incorporare o recuperare il file pubblico URL JWKS, risolvi il JWK tramite kid nell'intestazione JWT e verificare RS256.
I segreti condivisi HMAC sono appropriati per da server a server webhook, non per file binari ampiamente distribuiti.
Controllo del reclamo richiesto: rifiutare i token a meno che token_use è uguale licensechain_license_v1 (evita di confondere questo JWT con la sessione o altri token).
aud: quando presente, corrisponde alla tua Dashboard ID dell'applicazione. Il tuo verificatore dovrebbe garantire aud equivale all'app che ti aspetti prima di sbloccare le funzionalità.
TTL e aggiornamento: la durata dell'asserzione dipende dal livello del venditore sull'API (lc_vt: base ≈ 15m, avanzato ≈ 1h, personalizzato ≈ 24h). Prima exp, chiamare nuovamente la verifica per ottenere un nuovo token. Memorizza brevemente JWKS nella cache (ad esempio minuti) e recupera nuovamente su sconosciuto kid o errore di verifica dopo la rotazione.
Controlli autorevoli del server: quando l'accettazione JWT offline non è sufficiente (ad esempio revoca immediata, applicazione delle policy lato app), chiama
POST /v1/licenses/introspect con license_token.
L'API verifica la firma + i reclami e restituisce in tempo reale active stato dal database.
Revoca della lista negata: i backend autenticati possono revocare uno specifico JWT emesso tramite
POST /v1/licenses/revoke-token (per gettone jti).
Dopo la revoca, ritorna l'introspezione active: false con ragione token_revoked.
Riferimento alla richiesta (non esaustivo)
| Reclamo | Senso |
|---|---|
| iss | Emittente (API); URL API predefinito |
| sub | ID del record di licenza |
| aud | ID app (se impostato) |
| exp/iat/nbf | Dichiarazioni di tempo JWT standard |
| jti | ID token univoco per emissione |
| uso_token | Deve essere licensechain_license_v1 |
| lc_vt | fondamentale | avanzato | costume |
| livello_venditore | Stringa del livello del piano del venditore |
| stato | Stato della licenza |
| hw_bound | Se l'HWUID è stato soddisfatto per questa verifica |
| piano/caratteristiche | Dai metadati della licenza quando presenti |
| licenza_exp | Scadenza della licenza in secondi Unix (se impostata) |
Vedi anche Licenze E Riferimento API.
Crittografia
Crittografia dei dati
Tutti i dati sensibili vengono crittografati utilizzando algoritmi di crittografia standard del settore.
Crittografia a riposo
- Crittografia AES-256 per database
- Archiviazione di file crittografati
- Gestione sicura delle chiavi
- Rotazione regolare della chiave
Crittografia in transito
- TLS 1.3 per tutte le comunicazioni
- Blocco del certificato
- Perfetta segretezza in avanti
- Intestazioni HSTS
Sicurezza dell'API
Proteggi le comunicazioni API con autenticazione e autorizzazione adeguate.
// API request with proper headers // Set authorization and content type // Include API version and request ID // Send license verification request
Autenticazione e autorizzazione
Autenticazione a più fattori
- Supporto TOTP (password monouso basata sul tempo).
- Verifica basata su SMS
- Chiavi di sicurezza hardware (FIDO2/WebAuthn)
- Autenticazione biometrica
- Codici di backup per il recupero dell'account
Controllo degli accessi basato sui ruoli
- Sistema di autorizzazioni granulari
- Gestione degli accessi basata sul team
- Autorizzazioni a livello di risorsa
- Traccia di controllo per tutte le azioni
- Revisioni di accesso regolari
Gestione delle chiavi API
- Chiavi API con ambito con autorizzazioni limitate
- Rotazione e scadenza delle chiavi
- Monitoraggio e avvisi sull'utilizzo
- Capacità di revoca
- Chiavi specifiche dell'ambiente
Monitoraggio e registrazione
Monitoraggio della sicurezza
- Rilevamento delle minacce in tempo reale
- Algoritmi di rilevamento delle anomalie
- Monitoraggio dei tentativi di accesso non riusciti
- Avvisi di attività sospette
- Monitoraggio degli accessi geografici
Registrazione di controllo
- Registrazione completa delle attività
- Tracce di controllo immutabili
- Verifica dell'integrità del registro
- Conservazione dei registri a lungo termine
- Segnalazione di conformità
Risposta all'incidente
- Rilevamento automatico degli incidenti
- Procedure di escalation
- Playbook di risposta
- Analisi post-incidente
- Miglioramento continuo
Conformità e standard
SOC2 Tipo II
- Audit annuali di parte terza
- Controlli di sicurezza, disponibilità e riservatezza
- Verifica dell'integrità dell'elaborazione
- Misure di tutela della privacy
- Monitoraggio e miglioramento continui
Conformità al GDPR
- Attuazione dei diritti dell'interessato
- Privacy secondo i principi di progettazione
- Accordi sul trattamento dei dati
- Diritto all'oblio
- Supporto alla portabilità dei dati
ISO27001
- Sistema di gestione della sicurezza delle informazioni
- Valutazione e gestione del rischio
- Attuazione della politica di sicurezza
- Formazione regolare sulla sicurezza
- Processi di miglioramento continuo
Migliori pratiche di sicurezza
Sicurezza dello sviluppo
- Pratiche di codifica sicure e revisioni del codice
- Scansione delle vulnerabilità delle dipendenze
- Test di sicurezza automatizzati
- Proteggi il ciclo di vita dello sviluppo
- Formazione regolare sulla sicurezza per gli sviluppatori
Sicurezza delle infrastrutture
- Segmentazione della rete e firewall
- Rilevamento e prevenzione delle intrusioni
- Aggiornamenti e patch di sicurezza regolari
- Gestione sicura della configurazione
- Disaster recovery e continuità aziendale
Segreti di pagamento, mirror e webhook
- Conserva il prodotto
callbackSecretsolo lato server: utilizzato per il reindirizzamento Mirror HMAC e i webhook del commerciante a pagamento. - Non incorporare mai
callbackSecretin bundle frontend, app mobili o script lato client WooCommerce. - Utilizza il modello di firma corretto per canale: API core (guida ai webhook), Paga (webhook del commerciante), Specchio (SDK mirror).
- Errore chiuso sui ritorni del Mirror: verificare
signature, quindi chiama/api/checkout/mirror/validateprima di concedere l'accesso. - Ruotare
callbackSecrettramite API del prodotto in caso di fuga; aggiorna tempestivamente WooCommerce/Mirror SDK env vars. - I percorsi di analisi API principali richiedono
ADMINruolo: non esporre le chiavi API di amministrazione alle app rivolte al venditore.