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