Vorrei attaccarmi ad un servizio web che offre una API per fare cose, e conosco un po' di Python.
Le istruzioni dell'API dicono che posso collegarmi in maniera sicura utilizzando JWT e chiavi RSA.
Dove cominciare?
Chiavi crittografiche
scambio di chiavi:
L'articolo in inglese spiega bene con le immagini a colori, meglio dell'articolo italiano che è più orientato alla matematica.
In realtà la API in questione non usa lo scambio DH, ma RSA
generazione coppia di chiavi RSA:
Su Windows un modo semplice e grafico viene fornito dal tool PuttyGen (https://www.putty.org/)
Python
Esempio JWT:
- https://github.com/auth0-blog/jwts-in-python
Sommando le cose...
per autenticarsi usiamo
1. credenziali, user+pwd
2. eventualmente una API key, disponibile dal sito, per utenti con credenziali,
3. chiavi RSA.
con questi pezzi, ad ogni richiesta dobbiamo confezionare un JWT da accompagnare alla richiesta, per dimostrare che siamo proprio noi
Fonti e ulteriori approfondimenti
- https://auth0.com/blog/how-to-handle-jwt-in-python/
Nessun commento:
Posta un commento