digipost / signature-api-client-dotnet

Apache License 2.0
3 stars 3 forks source link

SEID 2.0 TEST Sertifikater fra Buypass (Buypass Class 3 Test4 CA G2 ST Business) klarer ikke å autentisere seg #426

Closed Takst3in closed 7 months ago

Takst3in commented 8 months ago

Heisann @simenstoa / @runeflobakk / @hanskhe

Gjennom vår løsning med eSignering, så har vi noen TEST-oppsett fra TEST -miljøer som sender ut signerings-oppdrag fra vår programvare. Dette fungerer med stort sett det fleste sertifikat-typer (eldre Byupass-certs, og andre Commfides-certs), men vi har problem med Buypass Class 3 Test4 CA G2 ST Business-sertifikater.

Vi har flere OrgNr som har sertifikater av samme type som også feiler på samme måte.

Vet at en annen gang var det noe biblioteker fra dere som måtte oppdateres for å støtte denne typen sertifikater, kan dette være tilfelle her også?

I logg fra applikasjon får vi; 2023-12-21 12:52:13.642 +01:00 [ERR] Feilet i StartDirectSign Digipost.Signature.Api.Client.Core.Exceptions.CertificateException: Certificate used for sender is not valid. Are you trying to use a test certificate in a production environment or the other way around? The reason is 'InvalidChain', description: 'Validation of Certificate with Subject 'OID.2.5.4.97=NTRNO-*, CN=****, O=*, C=NO' and Thumbprint '****' failed.This happened because the chain was built with the following certificates: 'CN=Buypass Class 3 Test4 CA G2 ST Business, O=Buypass AS, OID.2.5.4.97=NTRNO-983163327, C=NO' 'CN=Buypass Class 3 Test4 Root CA G2 ST, O=Buypass AS, OID.2.5.4.97=NTRNO-983163327, C=NO' , but only the following are allowed to build the chain: 'CN=Buypass Class 3 Test4 CA 3, O=Buypass AS-983163327, C=NO' 'CN=Buypass Class 3 Test4 Root CA, O=Buypass AS-983163327, C=NO' 'C=NO, O=Commfides Norge AS - 988 312 495, OU=CPN Enterprise-Norwegian SHA256 CA- TEST2, OU=Commfides Trust Environment(C) 2014 Commfides Norge AS - TEST, CN=Commfides CPN Enterprise-Norwegian SHA256 CA - TEST2' 'C=NO, O=Commfides Norge AS - 988 312 495, OU=CPN Primary Certificate Authority TEST, OU=CPN TEST - For authorized use only, OU=Commfides Trust Environment(C) TEST 2010 Commfides Norge AS, CN=CPN Root SHA256 CA - TEST' 'CN=Buypass Class 3 Test4 CA G2 HT Business, O=Buypass AS, OID.2.5.4.97=NTRNO-983163327, C=NO' 'CN=Buypass Class 3 Test4 CA G2 ST Business, O=Buypass AS, OID.2.5.4.97=NTRNO-983163327, C=NO' 'CN=Buypass Class 3 Test4 Root CA G2 HT, O=Buypass AS, OID.2.5.4.97=NTRNO-983163327, C=NO' 'CN=Buypass Class 3 Test4 Root CA G2 ST, O=Buypass AS, OID.2.5.4.97=NTRNO-983163327, C=NO' 'CN=Commfides Legal Person - G3 - TEST, OID.2.5.4.97=NTRNO-988312495, O=Commfides Norge AS, C=NO' 'CN=Commfides Root CA - G3 - TEST, OID.2.5.4.97=NTRNO-988312495, O=Commfides Norge AS, C=NO' . This usually happens if the certificate is retrieved from Windows Certificate Store and this is not allowed during validation. The chain can only be built using the validator certificates.' at Digipost.Signature.Api.Client.Core.BaseClient.ValidateSenderCertificateThrowIfInvalid() at Digipost.Signature.Api.Client.Core.BaseClient.CurrentSender(Sender jobSender) at Digipost.Signature.Api.Client.Direct.DirectClient.Create(Job job) at Acos.Felles.Signering.Providers.Difi.Services.DifiSignService.StartDirectSignAsync(StartDirectSign directSignData, Int32 tenantId) in D:\BuildAgent5\work\946e189213a9d647\Acos.Felles.Signering\Providers\Difi\Services\DifiSignService.cs:line 150

runeflobakk commented 8 months ago

Heisann!

Vet at en annen gang var det noe biblioteker fra dere som måtte oppdateres for å støtte denne typen sertifikater, kan dette være tilfelle her også?

Klientbiblioteket støttet SEID v2 klientsertifikater siden v8.1.0.

Vi har et issue vi jobber med nå som går på at feil versjon av api-client-shared-dotnet brukes, og SEID v2-støtte ligger i denne. Dersom du allerede er på oppdatert versjon av signature-api-client-dotnet (8.1.0 eller høyere) antar jeg at du kanskje treffes av denne. Kan du forsøke å skru av klientsidevalidering av sertifikatet deres, som beskrevet her: https://signering-docs.readthedocs.io/en/latest/client-integration/create-client-configuration.html Dette har ingenting å si for sikkerhet, da Posten signering-APIet vil uansett validere at deres sertifikat er gyldig før man får tilgang.

runeflobakk commented 8 months ago

@Takst3in Fungerer denne for dere? https://github.com/digipost/signature-api-client-dotnet/releases/tag/9.0.4

Takst3in commented 8 months ago

Takk Rune, har bedt utvikler om å oppdatere sin kode. Vi sjekker, og kommer tilbake!

Takst3in commented 7 months ago

@runeflobakk Bibliotek er oppdatert på vår side, og vi har nå en løsning som klarer å benytte Buypass SEID2.0 sertifikater. Takk!