4D NetKit: PKCE per OAuth 2.0

Tradotto automaticamente da Deepl

OAuth 2.0 è una pietra miliare dell’autenticazione moderna. Il PKCE è un miglioramento fondamentale che protegge OAuth 2.0 dagli attacchi di intercettazione e replay. Con l’introduzione di 4D 20 R5, ora offriamo un’integrazione perfetta di PKCE nei processi di autenticazione OAuth 2.0.

Impostando il nuovo parametro di inizializzazione PKCEEnabled su True della classe cs.NetKit.Nellaclasse OAuth2Provider , si attiva la Proof Key for Code Exchange(PKCE) all’interno dei processi di autenticazione OAuth 2.0. PKCE introduce un ulteriore livello di sicurezza, mitigando gli attacchi di intercettazione e replay per le applicazioni desktop. L’abilitazione di PKCE garantisce che ogni scambio di codice di autorizzazione sia crittograficamente protetto, rafforzando l’integrità complessiva dei flussi di autenticazione OAuth 2.0. Questa semplice regolazione dei parametri migliora la sicurezza dell’applicazione senza compromettere l’esperienza dell’utente.

Ad esempio, per autenticare il proprio account Google utilizzando PKCE, è sufficiente inserire:

var $credential:={}
// google
$credential.name:="Google" 
$credential.permission:="signedIn"
$credential.clientId:="499730xxx"
$credential.clientSecret:="fc1kwxxx"
$credential.redirectURI:="http://127.0.0.1:50993/authorize/"
$credential.scope:="https://mail.google.com/"
// PKCE activation
$credential.PKCEEnabled:=True

var $oauth2:=cs.NetKit.OAuth2Provider.new($credential)
var $token:=Try($oauth2.getToken())
if ($token=null)
  ALERT("Error: "+Last errors[0].message)
end if 

Si noti che PKCE è disponibile solo per permission=”SignIn”.

Per informazioni più dettagliate sull’integrazione di PKCE nei processi di autenticazione OAuth 2.0, consultare la documentazione di 4D NetKit.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené si è unito al team di 4D Program nel novembre 2016. In qualità di Product Owner, è incaricato di scrivere le storie degli utenti e di tradurle in specifiche funzionali. Il suo ruolo è anche quello di assicurarsi che l'implementazione della funzionalità fornita soddisfi le esigenze del cliente.Dopo aver conseguito una laurea in Informatica presso il CNAM, Fabrice è entrato a far parte di una piccola società di pubblicazione di software come sviluppatore Windev. In seguito ha lavorato per diverse aziende del settore industriale e commerciale come sviluppatore Windev e web e come consulente tecnico su nuove funzionalità.