Anbefalte klientbiblioteker for bruk mot HelseID
Sikkerhetsprofilen til HelseID krever at du implementerer FAPI 2.0-profilen i tillegg til å oppfylle våre egne funksjonelle krav. Det kan derfor være vanskelig å finne et klientbibliotek som kan brukes siden mange ikke oppfyller kravene.
Denne listen er basert på vår egen erfaring samt tilbakemeldinger fra leverandørene som bruker HelseID. Du kan velge å bruke andre biblioteker dersom de passer bedre i din applikasjon, men vi tillater ikke produksjonssetting av applikasjoner der du har implementert OAuth2- eller OpenID Connect-protokollene selv.
.NET
Duende.IdentityModel og deres utvidelse for Access Token Management:
https://docs.duendesoftware.com/identitymodel/
https://docs.duendesoftware.com/accesstokenmanagement/
For klienter som bare gjør innlogging anbefaler vi Microsofts innebygde mellomvare i ASP.NET Core:
https://learn.microsoft.com/en-us/aspnet/core/security/authentication/configure-oidc-web-authentication?view=aspnetcore-9.0
For API-er anbefaler vi Duende.AspNetCore.Authentication.JwtBearer:
https://docs.duendesoftware.com/identityserver/apis/aspnetcore/confirmation#validating-dpop
Java
Nimbus OAuth 2.0 SDK with OpenID Connect extensions:
https://connect2id.com/products/nimbus-oauth-openid-connect-sdk
For API-er anbefaler vi Nimbus JOSE + JWT:
https://connect2id.com/products/nimbus-jose-jwt
PHP
chillerlan/php-oauth er aktivt vedlikeholdt, men støtter ikke DPoP:
https://packagist.org/packages/chillerlan/php-oauth
League/oauth2-client er et alternativ, her må du legge til støtte for PAR og DPoP selv:
https://oauth2-client.thephpleague.com/
Javascript (Node.js og andre kjøretidsmiljøer):
openid-client:
https://github.com/panva/openid-client
Merk at HelseID ikke tillater applikasjoner som bare kjører i nettleseren uten en backend.
GO
For API-er anbefaler vi golang-jwt sammen med go-dpop:
https://github.com/golang-jwt/jwt/
https://github.com/AxisCommunications/go-dpop