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
issEmittente (API); URL API predefinito
subID del record di licenza
audID app (se impostato)
exp/iat/nbfDichiarazioni di tempo JWT standard
jtiID token univoco per emissione
uso_tokenDeve essere licensechain_license_v1
lc_vtfondamentale | avanzato | costume
livello_venditoreStringa del livello del piano del venditore
statoStato della licenza
hw_boundSe l'HWUID è stato soddisfatto per questa verifica
piano/caratteristicheDai metadati della licenza quando presenti
licenza_expScadenza 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 callbackSecret solo lato server: utilizzato per il reindirizzamento Mirror HMAC e i webhook del commerciante a pagamento.
  • Non incorporare mai callbackSecret in 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/validate prima di concedere l'accesso.
  • Ruotare callbackSecret tramite API del prodotto in caso di fuga; aggiorna tempestivamente WooCommerce/Mirror SDK env vars.
  • I percorsi di analisi API principali richiedono ADMIN ruolo: non esporre le chiavi API di amministrazione alle app rivolte al venditore.