4D Netkit: Ověřování OAuth2.0 pomocí certifikátu

Automaticky přeloženo z Deepl

Některé servery OAuth 2.0, například Microsoft Identity Platform, poskytují možnost ověřování pomocí certifikátů namísto klientských tajemství. Tento přístup zvyšuje zabezpečení a ověřovací mechanismy v rámci protokolu. Počínaje verzí 4D 20 R5 obsahuje Netkit správu připojení založenou na certifikátech OAuth 2.0.

Použití rámce Assertion Framework pro ověřování a autorizaci klientů OAuth 2.0 Granty nabízí vyšší zabezpečení než klientské tajemství. Umožňuje šifrovaná a digitálně podepsaná tvrzení a posiluje autentizační mechanismy o další identifikační informace, jako jsou digitální certifikáty nebo JWT. To snižuje rizika spojená se správou tajemství a poskytuje bezpečnější metodu ověřování a autorizace.

Chcete-li používat certifikáty, musíte mít oprávnění „Service“ a používat vlastnosti .privateKey a .thumbprint objektu OAuth2Provider.

Pokud chcete používat certifikáty s platformou Microsoft Identity Platform:

  • Přejděte do rozhraní pro registraci aplikací Azure a nahrajte svůj certifikát, abyste získali kód Thumbprint:

  • Nyní máte platný Thumbprint pro získání tokenu:
var $params;$token : Object
var $oAuth : cs.NetKit.OAuth2Provider
var $privatekey:=File("/RESOURCES/key.pem").getText("ascii"; Document unchanged)

If (Length($t_privatekey)>0)
	$params:=New object()
	$params.name:="Microsoft"
	// Only usable with permission:="Service"
	$params.permission:="Service"
	$params.clientId:="8008ebf5-xxx"
	
	$params.scope:="https://graph.microsoft.com/.default"
	$params.tenant:="16dc191b-xxx"
	$params.clientEmail:=$myClientEmail
	
	// Certificate private key
        $params.privateKey:=$t_privatekey
        // Thumbprint of certificate / public key can be copied in Azure portal at certificated & secrets
	$params.thumbprint:="A4CC91B864xxx"  
	
	$oAuth:=cs.NetKit.OAuth2Provider.new($params)
	$token:=$cs_oAuth.getToken()
End if 

Závěrem lze říci, že používání ověřování na základě certifikátu OAuth 2.0, jak je uvedeno v RFC 7521, zvyšuje bezpečnostní opatření oproti klientským tajemstvím. Při dodržení pokynů v dokumentaci mohou vývojáři bezpečně integrovat certifikáty se servery OAuth 2.0, jako je Microsoft Identity Platform, a zajistit tak robustní mechanismy ověřování aplikací.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené se připojil k týmu 4D Program v listopadu 2016. Jako Product Owner má na starosti psaní uživatelských příběhů, které následně převádí do funkčních specifikací. Jeho úkolem je také zajistit, aby dodaná implementace funkcí splňovala potřeby zákazníků.Po získání bakalářského titulu v oboru informatiky na CNAM nastoupil Fabrice do malé softwarové vydavatelské společnosti jako vývojář Windev. Poté pracoval pro různé společnosti v oblasti průmyslu a obchodu jako vývojář aplikací Windev a webových aplikací a také jako technický poradce pro nové funkce.