Esame: Autenticazione JWT OAuth
Questo set di flashcard copre i concetti fondamentali dell'autenticazione JWT e OAuth, utili per comprendere la sicurezza nelle applicazioni web. È ideale per studenti universitari che vogliono approfondire questi temi.
Quiz(72 domande)
1. Quale descrizione rappresenta meglio un JWT?
Termini in questo set(72)
Fondamenti di JWT(16)
JWT
JSON Web Token è un formato compatto per trasmettere informazioni tra parti come oggetti JSON.
Componenti di un JWT
Un JWT è composto da tre parti: intestazione, payload e firma. - Intestazione: tipo e algoritmo - Payload: dati - Firma: verifica dell'integrità
Intestazione del JWT
Descrive il tipo di token e l'algoritmo di firma utilizzato, ad esempio HMAC o RSA.
Payload del JWT
Contiene le affermazioni (claims) relative all'utente e ai dati. - Affermazioni standard: sub, exp, iss.
Firma del JWT
È generata utilizzando l'intestazione e il payload, assicurando che il token non venga modificato.
Vero o falso: JWT è sicuro di default.
Falso. JWT deve essere utilizzato con HTTPS e con algoritmi di firma robusti.
Affermazioni (claims)
Informazioni incorporate nel payload. Possono essere: - Affermazioni registrate - Affermazioni pubbliche - Affermazioni private
Qual è la durata di un JWT?
La durata è specificata nell'affermazione 'exp' nel payload, in formato timestamp.
Come viene firmato un JWT?
Utilizzando una chiave segreta o una chiave privata, in base all'algoritmo scelto nell'intestazione.
Utilizzo di JWT
JWT è comunemente usato per l'autenticazione e l'autorizzazione nelle applicazioni web moderne.
Vantaggi di JWT
I vantaggi includono: - Compactness - Autenticità - Scalabilità
Diff. tra JWT e sessioni tradizionali
JWT è stateless, mentre le sessioni tradizionali richiedono lo stato sul server.
Come decodificare un JWT?
Puoi decodificare un JWT in formato JSON usando librerie disponibili in vari linguaggi di programmazione.
Fill in the blank: JWT è un metodo per ...
... trasmettere informazioni in modo sicuro tra il client e il server.
Esempio di utilizzo di JWT
Dopo il login, il server genera un JWT. Il client lo utilizza per autenticarsi in richieste future.
Vero o falso: JWT può contenere dati sensibili.
Falso. Non dovresti inserire dati sensibili nel JWT poiché è facilmente decodificabile.
OAuth 2.0(20)
Che cos'è OAuth 2.0?
OAuth 2.0 è un protocollo di autorizzazione che consente a un'applicazione di ottenere accesso limitato a risorse protette su un server.
Qual è il flusso di autorizzazione principale?
Il flusso di autorizzazione principale è il flusso di autorizzazione basato su codice, in cui l'utente concede accesso all'applicazione tramite un codice temporaneo.
Client vs. Resource Owner
Il Client è l'applicazione che richiede l'accesso, mentre il Resource Owner è l'utente che possiede le risorse protette.
Che cosa rappresenta il 'token'?
Il token è una stringa che rappresenta l'autorizzazione concessa al Client per accedere alle risorse protette.
Vero o falso: OAuth 2.0 gestisce l'autenticazione.
Falso. OAuth 2.0 gestisce l'autorizzazione, non l'autenticazione.
Quali sono i tipi di grant in OAuth 2.0?
- Authorization Code - Implicit - Resource Owner Password Credentials - Client Credentials
Cosa fa il flusso 'Authorization Code'?
Il flusso 'Authorization Code' restituisce un codice che l'app utilizza per ottenere un token di accesso.
Cosa è l'Authorization Server?
È il server che gestisce le autorizzazioni e rilascia i token di accesso al Client dopo la concessione del consenso.
Fill in the blank: L'utente concede accesso a ___.
L'utente concede accesso al Client.
Qual è il ruolo del 'Redirect URI'?
Il 'Redirect URI' è l'URL dove l'utente viene reindirizzato dopo aver concesso l'accesso.
Che cos'è il 'Client ID'?
Il 'Client ID' è un identificatore unico per il Client registrato presso l'Authorization Server.
Authorization Grant vs. Access Token
L'Authorization Grant è il permesso iniziale, mentre l'Access Token è quello che consente l'accesso alle risorse protette.
Cosa fa il flusso 'Client Credentials'?
Il flusso 'Client Credentials' consente a un Client di ottenere un token per accedere alle risorse senza l'interazione dell'utente.
Vero o falso: OAuth 2.0 supporta diversi tipi di Client.
Vero. OAuth 2.0 supporta Client pubblici e riservati.
Che cosa sono i 'Scopes'?
I 'Scopes' definiscono i livelli di accesso richiesti dal Client per le risorse protette.
Qual è la differenza tra 'Implicit' e 'Authorization Code'?
Il flusso 'Implicit' restituisce direttamente un token, mentre 'Authorization Code' richiede un codice intermedio.
Cause → Effect: L'utente rifiuta l'accesso.
Il Client non ottiene un token di accesso per le risorse.
Che cos'è il 'Refresh Token'?
Il 'Refresh Token' è utilizzato per ottenere un nuovo Access Token senza richiedere nuovamente l'autorizzazione.
Quali sono i vantaggi di OAuth 2.0?
- Scalabilità - Sicurezza - Separazione dell'autenticazione dall'autorizzazione
Cosa deve fare il Client per ottenere un Access Token?
Il Client deve presentare l'Authorization Grant all'Authorization Server per ricevere l'Access Token.
Integrazione JWT e OAuth(20)
JWT
JSON Web Token, un metodo compatto e autonomo per rappresentare informazioni tra le parti.
OAuth
Un protocollo di autorizzazione che consente accessi limitati a risorse protette su internet.
Integrazione JWT e OAuth
JWT viene utilizzato come metodo di trasporto delle informazioni di autorizzazione in OAuth.
Vero o Falso: JWT è parte di OAuth.
Vero. JWT è spesso utilizzato come token di accesso in flussi OAuth.
Flusso di autorizzazione OAuth con JWT
1. Richiesta token 2. Generazione JWT 3. Accesso alle risorse.
Cos'è un token di accesso?
È un JWT che consente a un client di accedere a risorse su un server.
Vantaggi di usare JWT in OAuth
1. Autenticazione sicura 2. Stateless 3. Scalabilità.
Vero o Falso: JWT è sempre sicuro.
Falso. JWT può essere vulnerabile se non viene gestito correttamente.
Cosa contiene un JWT?
Header, Payload (dati) e Signature per garantire l'integrità.
Esempio di payload JWT
{"sub":"1234567890","name":"Mario Rossi","admin":true}
Differenza tra access token e refresh token
Access token: accesso immediato. Refresh token: rinnovo dell'accesso.
Causa ed effetto: uso di JWT in OAuth
Causa: utilizzo di JWT → Effetto: autorizzazione più rapida e scalabile.
Cosa succede se un JWT scade?
L'utente deve richiedere un nuovo token utilizzando il refresh token.
Qual è la durata tipica di un access token?
Di solito tra 5 minuti e 1 ora, a seconda dell'applicazione.
Come viene firmato un JWT?
Utilizzando un algoritmo come HMAC SHA256 o RSA.
Vero o Falso: JWT può essere decifrato da chiunque.
Vero. Anche se è firmato, il payload è in chiaro e visibile.
Integrazione JWT in una richiesta OAuth
Il client invia il JWT nel campo Authorization dell'intestazione HTTP.
Cosa è il 'scopes' in OAuth?
Definisce i permessi specifici richiesti dall'applicazione.
Esempio di utilizzo di JWT
Un'app mobile che richiede accesso a dati utente tramite un backend.
Cosa fare per invalidare un JWT?
Implementare una blacklist o un sistema di revoca dei token.
Sicurezza e Best Practices(16)
Cos'è l'algoritmo di firma?
L'algoritmo di firma è un metodo per garantire l'integrità dei token JWT, utilizzando HMAC o RSA.
Vero o falso: JWT deve essere trasmesso in chiaro.
Falso. JWT deve essere sempre trasmesso su HTTPS per prevenire intercettazioni.
Qual è l'importanza della scadenza del token?
La scadenza limita la validità del token, riducendo il rischio di uso improprio.
Compila il vuoto: I token JWT dovrebbero essere _______.
I token JWT dovrebbero essere firmati per garantire autenticità e integrità.
Quali sono i rischi di un token JWT senza scadenza?
Rischi: uso non autorizzato, difficoltà nel revocare l'accesso.
Cosa fare se un token JWT è compromesso?
Revocare il token e invalidare sessioni attive.
Differenza tra HMAC e RSA?
HMAC è simmetrico, RSA è asimmetrico; HMAC usa la stessa chiave, RSA usa chiavi diverse.
Qual è una best practice per l'archiviazione dei segreti?
Utilizzare un gestore di segreti sicuro per conservare chiavi e segreti.
Vero o falso: I token JWT possono contenere informazioni sensibili.
Falso. Non dovrebbero contenere dati sensibili, poiché possono essere decodificati.
Cosa si intende per revoca dei token?
Revoca significa disabilitare un token prima della sua scadenza, per esempio, in caso di compromissione.
Qual è il ruolo del nonce?
Il nonce previene attacchi di replay assicurando che ogni richiesta sia unica.
Come limitare l'uso di un token JWT?
Impostare limiti di utilizzo o scadenze brevi per ridurre il rischio.
Cosa fare per proteggere le informazioni nel payload?
Utilizzare crittografia per proteggere i dati sensibili nel payload.
Quali metodi di autenticazione usare con OAuth?
Usare l'autenticazione a due fattori e token di accesso a breve termine.
Qual è l'importanza della validazione del token?
La validazione verifica che il token sia autentico e non sia scaduto.
Perché evitare token con permessi eccessivi?
Evitare token con permessi eccessivi riduce il rischio di accesso non autorizzato.
Domande in questo set(72)
1. Quale descrizione rappresenta meglio un JWT?
2. Qual è la funzione principale di un algoritmo di firma in JWT?
3. Qual è la funzione principale di un JWT?
4. Che cos'è il flusso 'Resource Owner Password Credentials'?
5. Cos'è l'OAuth?
6. Quale delle seguenti pratiche è consigliata per la trasmissione di un token JWT?
7. Quali sono le tre parti principali di un JWT?
8. Quale tra questi NON è un tipo di grant in OAuth 2.0?
9. Come viene utilizzato JWT in OAuth?
10. Perché è importante impostare una scadenza per un token JWT?
11. Cosa rappresenta l'intestazione di un JWT?
12. Cosa avviene quando il token di accesso scade?
13. Quale delle seguenti affermazioni è vera riguardo a JWT?
14. I token JWT dovrebbero essere ____.
15. Cosa contiene il payload di un JWT?
16. Qual è il ruolo del 'Resource Server'?
17. Qual è il primo passo nel flusso di autorizzazione OAuth con JWT?
18. Qual è uno dei principali rischi associati a un token JWT senza scadenza?
19. Quale affermazione è vera riguardo alla firma di un JWT?
20. Che cosa indica il termine 'Client Credentials'?
21. Cosa rappresenta il payload in un JWT?
22. Cosa si deve fare se si sospetta che un token JWT sia stato compromesso?
23. JWT è sicuro di default?
24. Che cosa rappresenta un 'Scope' in OAuth 2.0?
25. Qual è la principale differenza tra un access token e un refresh token?
26. Qual è la principale differenza tra HMAC e RSA?
27. Quale delle seguenti è un'affermazione registrata in un JWT?
28. Quale dei seguenti è un vantaggio di OAuth 2.0?
29. Cosa succede se un JWT scade?
30. Qual è una best practice per la gestione dei segreti?
31. Come viene generata la firma di un JWT?
32. In quale flusso il token di accesso è restituito direttamente al Client?
33. Qual è la durata tipica di un access token in OAuth?
34. Quale delle seguenti affermazioni è vera riguardo ai dati sensibili nei token JWT?
35. Perché i JWT sono utilizzati nel web moderno?
36. Che cosa deve presentare il Client per ottenere un Access Token?
37. Come viene firmato un JWT?
38. Cosa si intende per revoca di un token?
39. Quale dei seguenti è un vantaggio dei JWT?
40. Cos'è un 'Authorization Code'?
41. Cosa significa che un JWT può essere decifrato da chiunque?
42. Qual è la funzione di un nonce in un sistema di autenticazione?
43. Qual è la principale differenza tra JWT e sessioni tradizionali?
44. Cosa avviene quando l'utente rifiuta l'accesso?
45. Qual è il ruolo degli 'scopes' in OAuth?
46. Qual è un modo per limitare l'uso di un token JWT?
47. Come puoi decodificare un JWT?
48. Che cosa è un 'Redirect URI'?
49. In quale scenario è più probabile che si utilizzi JWT?
50. Qual è un metodo per proteggere i dati nel payload di un token JWT?
51. Completa la frase: JWT è un metodo per ...
52. Cosa fa l'Authorization Server?
53. Cosa è necessario fare per invalidare un JWT?
54. Quali metodi di autenticazione sono raccomandati con OAuth?
55. Esempio di utilizzo di JWT?
56. Quale dei seguenti è un esempio di Client pubblico?
57. Quale delle seguenti opzioni non è un vantaggio dell'uso di JWT in OAuth?
58. Perché è fondamentale la validazione di un token JWT?
59. Vero o falso: JWT può contenere dati sensibili.
60. Cosa è un 'Refresh Token'?
61. Qual è uno scopo principale dell'implementazione di JWT in OAuth?
62. Perché è rischioso utilizzare token con permessi eccessivi?
63. Quale delle seguenti affermazioni è falsa riguardo alle affermazioni (claims) contenute in un JWT?
64. Quale affermazione è vera riguardo a OAuth 2.0?
65. In un flusso OAuth, dove deve essere inviato il JWT?
66. Che cosa rappresenta il 'Client ID'?
67. Qual è la caratteristica principale che rende i JWT 'stateless'?
68. Qual è la funzione principale del 'Scope' in OAuth 2.0?
69. In un flusso OAuth, quale ruolo svolge il refresh token?
70. Quale dei seguenti flussi non richiede l'interazione dell'utente?
71. Quale delle seguenti affermazioni riguardo alla firma di un JWT è corretta?
72. Cosa succede se un Access Token viene compromesso?
Set correlati
Wiederholung: Browser lädt eine Seite
Test: Was eine URL ist
JavaScript DOM and events notes
REST APIs and HTTP methods exam review
What a URL is
How a browser loads a page
HTML vs CSS vs JavaScript step by step
Wiederholung: HTML CSS JavaScript Rollen
Crea il tuo set di studio
Carica un PDF, incolla le tue note o descrivi un argomento – l'IA genera schede, quiz e altro in pochi secondi.

