Perché utilizzare il metodo UUID rispetto all'ID tradizionale?

1

La seguente citazione proviene da uno dei miei insegnanti non molto tempo fa, insieme a un esercizio per creare un'applicazione:

To follow guidelines, you are to use UUID's instead of ID's.

Ovviamente, la domanda Perché è un UUID più sicuro / migliore di un ID tradizionale è arrivato.

L'UUID dovrebbe essere utilizzato in una tabella Database di utenti, contenente login, ma anche informazioni personali come numero di telefono, nome reale, indirizzo ecc.

Da quello che so, è scritto in alcune linee guida aziendali per aziende di grandi dimensioni che utilizzano gli UUID quando lavorano con informazioni riservate, È anche usuale applicare un UUID ad altre informazioni diverse dalle informazioni riservate?

    
posta Lighty 20.10.2015 - 09:40
fonte

2 risposte

1

WoJ ha affrontato l'aspetto della sicurezza, aggiungerò perché potrebbe essere una cattiva idea utilizzare un UUID come ID.

Ci sono alcuni potenziali trucchi con l'utilizzo di un UUID come PK su un tavolo.

  • Gli UUID occupano più spazio di ints
  • Gli UUID sono più lenti a partecipare rispetto a ints

C'è anche un problema con la chiave di clustering sul tavolo che è un UUID - controlla la risposta accettata su questa domanda per una buona spiegazione. link

    
risposta data 20.10.2015 - 11:27
fonte
2

Un UUID non aggiungerà alcuna sicurezza specifica se usato come ID in un database. Il suo ruolo principale è quello di essere (ragionevolmente) unico.

Basare la sicurezza di un database sulla casualità degli ID (presumibilmente perché sono più difficili da indovinare di un ID incrementale, immagino) non è una buona misura di sicurezza. Non farà certamente male, ma i meccanismi di base devono essere applicati per primi. Ciò che è di estrema importanza è la sicurezza dell'applicazione che richiede i dati da questo database (SQL Injection è una delle preoccupazioni principali)

    
risposta data 20.10.2015 - 10:52
fonte

Leggi altre domande sui tag