Problemen bij het verifiëren van .net C # client op Java Webservice via https en certificaat

Ik implementeer een C# webservice-client die een Java-webservice moet gebruiken. Communicatieprotocol is https en authenticatie moet worden gedaan via certificaat (inclusief privésleutel).

Voor zover ik weet, is het doel van de privésleutel het identificeren van de juiste klantendatabase achter de webservice.

Ik weet het formaat van het certificaatbestand niet omdat de extensie "txt" is. Als ik dit bestand probeer te importeren in het Windows-certificaatarchief via mmc-console, treedt er een fout op "het bestandstype kan niet worden herkend" (ik vertaalde dit vanuit het Duits, dus het klinkt misschien een beetje anders in het Engels). Dus mijn client-app kan dit certificaat niet gebruiken, het zou het niet vinden in het certificaatarchief.

Ik heb geprobeerd het certificaat te converteren en de bestandslocatie door te geven aan de constructor.

 mVerifyCert = new X509Certificate2(AppConfig.Settings.Default.CertificateAndKeyFileFullName);

Maar dan gebeurt de volgende uitzondering (in het Engels kan het "System.Security.Cryptography.CryptographicException: Object is not found."

{System.Security.Cryptography.CryptographicException: Das angeforderte Objekt wurde nicht gefunden.

bei System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException (Int32 hr)    bei System.Security.Cryptography.X509Certificates.X509Utils._QueryCertFileType (String fileName)    bei System.Security.Cryptography.X509Certificates.X509Certificate.LoadCertificateFromFile (String fileName, Object password, X509KeyStorageFlags keyStorageFlags)    bei System.Security.Cryptography.X509Certificates.X509Certificate..ctor (String fileName)    bei System.Security.Cryptography.X509Certificates.X509Certificate2..ctor (String fileName)

Dus nu zou je kunnen denken dat er een probleem zou zijn met het bestand. Maar wanneer dit bestand wordt gebruikt met SoapUI Tool om de webservice te testen, werkt het prima. Ik gebruik ook een hava java voorbeeld client-app die dit bestand gebruikt met java trust store en het werkt prima voor de java-client.

Ik heb ook geprobeerd de bestandsextensie van "txt" in "p12", "pem" te veranderen om het bestand in het Windows-certificaatarchief te kunnen importeren maar geen succes.

Kun je me vertellen wat het probleem hier is? Wat kan ik doen om dit op te lossen. Ik heb helemaal geen idee.

Hier is mijn app.config:

<?xml version="1.0" encoding="utf-8" ?>

    
        
            
        
    
    
        
            
                ..\..\Data\getDefactInstance.xml
            
            
                ..\..\Data\DefactInstanceXmlDotNet.xml
            
            
                https://xyz.com/wsAdapter
            
            
                ..\..\Data\sdm.crt
            
            
                ..\..\Data\sdmCert + key.txt
            
            
                https://xyz.net/qcbin
            
            
                xyz
            
            
                xyz
            
            
                xyz
            
            
                xyz
            
        
    
    
        
            
                
                    
                    
                        <transport clientCredentialType="None" proxyCredentialType="None"
                            realm="" />
                        
                    
                
                
                    
                    
                        <transport clientCredentialType="None" proxyCredentialType="None"
                            realm="" />
                        
                    
                
                <!--
                    
                    
                        <transport clientCredentialType="None" proxyCredentialType="None"
                            realm="" />
                        
                    
                -->
            
        
        
            
            
        
    
0
Kun je het relevante gedeelte van je app.config posten? Het lijkt erop dat het item AppConfig.Settings.Default.CertificateAndKeyFileFullName mogelijk ontbreekt.
toegevoegd de auteur competent_tech, de bron
Neem een ​​kijkje op deze link: stackoverflow.com/questions/7400500/… . Het klinkt als bijna exact hetzelfde probleem.
toegevoegd de auteur competent_tech, de bron
Dat lijkt niet het probleem te zijn, ik heb geprobeerd de bestandspadnaam hard te coderen, maar dezelfde fout. Ik heb mijn app.config aan mijn vraag toegevoegd.
toegevoegd de auteur donttellya, de bron
Bedankt voor de link, het klinkt inderdaad als mijn probleem. Maar ik begrijp niet hoe ik dingen moet samenstellen. Dus vroeg ik om codevoorbeelden in de vraag waarnaar uw link verwijst. Of kun je dit een beetje gedetailleerder uitleggen wat ik moet doen?
toegevoegd de auteur donttellya, de bron
Mijn opmerking die ik heb gemaakt over de link die je hebt gepost, is verwijderd. Ik ben nieuw voor deze community, dus sorry voor onjuiste berichten. Hier is wat ik schreef in de andere link, ik hoop dat die jongens mijn vraag hier zullen zien: na het lezen van beide antwoorden (van de andere link), heb ik geen idee hoe ik dingen moet samenstellen om mijn probleem op te lossen. Wilt u alstublieft een code opgeven? voorbeelden van objecten die moeten worden gemaakt, welke methoden moeten worden aangeroepen? Hoe SystemSecurity.Cryptography.X509Certificates.X509Certificat & zwnj; e2? maken? Welke eigenschappen moeten worden ingesteld? Hoe deze monobroncodebestanden te gebruiken die poupou in zijn bericht vermeldde?
toegevoegd de auteur donttellya, de bron

Geen antwoorden

0