Forum » Programiranje » C# davčno potrjevanje
C# davčno potrjevanje
jazuporabnik ::
Ali bi bil kdo pripravljen dat inštrukcije (v c#, osnova je primer, ki so ga objavili na FURS) glede davčnega potrjevanja računov. Imam testni certifikat. Drugače se mi zatakne že na začetku, napaka:
"Could not create SSL/TLS secure channel" - vse potrebne certifikate imam že uvožene, pa nimam več idej kako popravit zadevo.
Inštrukcije bi potreboval, torej, da se naredi: Echo test, prijava poslovnega prostora (več teh), potrjevanje računov. Pripravljen sem pa dat do 40 EUR na uro, lahko tudi prek PayPal, pa inštrukcije lahko preko skype, pa ammyy desktop povezava.
lp. D.
"Could not create SSL/TLS secure channel" - vse potrebne certifikate imam že uvožene, pa nimam več idej kako popravit zadevo.
Inštrukcije bi potreboval, torej, da se naredi: Echo test, prijava poslovnega prostora (več teh), potrjevanje računov. Pripravljen sem pa dat do 40 EUR na uro, lahko tudi prek PayPal, pa inštrukcije lahko preko skype, pa ammyy desktop povezava.
lp. D.
- spremenil: jazuporabnik ()
MH0 ::
Če veš, da imaš res certifikat na pravem mestu potem ti morda pomega tole.
Ali pa sem postavi breakpoint in malo poglej.
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
Ali pa sem postavi breakpoint in malo poglej.
System.Net.ServicePointManager.ServerCertificateValidationCallback = (sndr, cert, chain, error) => { //return true; //Če si junak :-) };
jazuporabnik ::
ServicePointManager.ServerCertificateValidationCallback += ValidateServerCertificate; mi vrne:
System.Net.ServicePointManager.ServerCertificateValidationCallback.get returned null System.Net.Security.RemoteCertificateValidationCallback
System.Delegate.Combine returned {Method = {Boolean ValidateServerCertificate(System.Object, System.Security.Cryptography.X509Certificates.X509Certificate, System.Security.Cryptography.X509Certificates.X509Chain, System.Net.Security.SslPolicyErrors)}} System.Net.Security.RemoteCertificateValidationCallback Method {Boolean ValidateServerCertificate(System.Object, System.Security.Cryptography.X509Certificates.X509Certificate, System.Security.Cryptography.X509Certificates.X509Chain, System.Net.Security.SslPolicyErrors)} System.Reflection.MethodInfo {System.Reflection.RuntimeMethodInfo} Attributes Public | Static | HideBySig System.Reflection.MethodAttributes CallingConvention Standard System.Reflection.CallingConventions ContainsGenericParameters false bool CustomAttributes Count = 0 System.Collections.Generic.IEnumerable<System.Reflection.CustomAttributeData> {System.Collections.ObjectModel.ReadOnlyCollection<System.Reflection.CustomAttributeData>} DeclaringType {Name = "SOAP" FullName = "BlagajneSample.SOAP"} System.Type {System.RuntimeType} IsAbstract false bool IsAssembly false bool IsConstructor false bool IsFamily false bool IsFamilyAndAssembly false bool IsFamilyOrAssembly false bool IsFinal false bool IsGenericMethod false bool IsGenericMethodDefinition false bool IsHideBySig true bool IsPrivate false bool IsPublic true bool IsSecurityCritical true bool IsSecuritySafeCritical false bool IsSecurityTransparent false bool IsSpecialName false bool IsStatic true bool IsVirtual false bool MemberType Method System.Reflection.MemberTypes MetadataToken 100663309 int MethodHandle {System.RuntimeMethodHandle} System.RuntimeMethodHandle MethodImplementationFlags IL System.Reflection.MethodImplAttributes Module {BlagajneSample.exe} System.Reflection.Module {System.Reflection.RuntimeModule} Name "ValidateServerCertificate" string ReflectedType {Name = "SOAP" FullName = "BlagajneSample.SOAP"} System.Type {System.RuntimeType} ReturnParameter {Boolean } System.Reflection.ParameterInfo {System.Reflection.RuntimeParameterInfo} ReturnType {Name = "Boolean" FullName = "System.Boolean"} System.Type {System.RuntimeType} ReturnTypeCustomAttributes {Boolean } System.Reflection.ICustomAttributeProvider {System.Reflection.RuntimeParameterInfo}
Če veš, da imaš res certifikat na pravem mestu potem ti morda pomega tole.
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
Ali pa sem postavi breakpoint in malo poglej.
System.Net.ServicePointManager.ServerCertificateValidationCallback = (sndr, cert, chain, error) => {
//return true; //Če si junak :-)
};
Vazelin ::
Da ni težava na serverju
Daj poglej če ti npr. IE ali Chrome kaj javi, če vpišeš naslov servisa (poglej če je povezava varna).
Daj poglej če ti npr. IE ali Chrome kaj javi, če vpišeš naslov servisa (poglej če je povezava varna).
jazuporabnik ::
Da ni težava na serverju
Daj poglej če ti npr. IE ali Chrome kaj javi, če vpišeš naslov servisa (poglej če je povezava varna).
Če kličem: https://blagajne-test.fu.gov.si:9002/v1... prvič me je preusmerilo na neko spletno stran (mini blagajne), potem ko sem refrešal recimo na IE, mi sporoči:
Ni mogoče vzpostaviti varne povezave s to stranjo
Do tega je morda prišlo, ker spletno mesto uporablja zastarele ali manj varne nastavitve varnosti na prenosni plasti (TLS). Če se to ponavlja, se obrnite na lastnika spletnega mesta.
Vaše nastavitve varnosti na prenosni plasti (TLS) niso nastavljene na privzete vrednosti, kar tudi lahko povzroča to napako.
jazuporabnik ::
Za začetek poglej projekt na github
https://github.com/MPrtenjak/SLOTax
ja to sem že gledal, dosti je spremenil tisto kodo, ki jo je furs prikazal, ker ma dosti svojih rešitev implementiranih. Drugače mi njegov program dela, ko ga testiram.
lp, d.
windigo ::
ServerCertificateValidationCallback ni event, ampak, kot pove ime in vsa dokumentacija in pet minut izkušenj z .NET, callback delegate.
Torej NE MOREŠ uporabiti +=, rabiš direktno prirejanje, ki se prevede v klic setter funkcije, kot ti je napisal tudi MH0.
Torej NE MOREŠ uporabiti +=, rabiš direktno prirejanje, ki se prevede v klic setter funkcije, kot ti je napisal tudi MH0.
jazuporabnik ::
ServerCertificateValidationCallback ni event, ampak, kot pove ime in vsa dokumentacija in pet minut izkušenj z .NET, callback delegate.
Torej NE MOREŠ uporabiti +=, rabiš direktno prirejanje, ki se prevede v klic setter funkcije, kot ti je napisal tudi MH0.
Ok, uporabil sem rešitev od MNet (Link)
ServicePointManager.ServerCertificateValidationCallback += new System.Net.Security.RemoteCertificateValidationCallback((sender, certificate, chain, sslPolicyErrors) => true);
Isti error.
windigo ::
Bolj direktno ti že ne zmorem povedat.
ServicePointManager.ServerCertificateValidationCallback += ... karkoli ... bo VEDNO rezultiralo v istem runtime exceptionu, če bo že kompajler spustil zadevo skozi.
Pravilno je:
ServicePointManager.ServerCertificateValidationCallback = ... karkoli si že uporabil zgoraj ...
ServicePointManager.ServerCertificateValidationCallback += ... karkoli ... bo VEDNO rezultiralo v istem runtime exceptionu, če bo že kompajler spustil zadevo skozi.
Pravilno je:
ServicePointManager.ServerCertificateValidationCallback = ... karkoli si že uporabil zgoraj ...
jazuporabnik ::
Bolj direktno ti že ne zmorem povedat.
ServicePointManager.ServerCertificateValidationCallback += ... karkoli ... bo VEDNO rezultiralo v istem runtime exceptionu, če bo že kompajler spustil zadevo skozi.
Pravilno je:
ServicePointManager.ServerCertificateValidationCallback = ... karkoli si že uporabil zgoraj ...
Tudi z "=" isti error sporoči, Cannot create SSL/TCL secure tunel
windigo ::
Preberi še enkrat, kaj ti je napisal MH0. Čeprav se mi zdi, da še nisi glih dozorel za samostojno copy pastanje
jazuporabnik ::
MH0 ::
A si naredil tole ali želiš reči, da ti takšna koda ne deluje?
Nič nam tudi nisi povedal o svojem projektu. Kateri .NET in tip projekta?
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12; System.Net.ServicePointManager.ServerCertificateValidationCallback = (sndr, cert, chain, error) => { //return true; //Če si junak :-) }; // <-- Sem postavi breakpoint in preglej sndr, cert, chain, error
Nič nam tudi nisi povedal o svojem projektu. Kateri .NET in tip projekta?
windigo ::
jazuporabnik je izjavil:
... kaj misliš da nisem probal to naredit, ko mi je napisal odgovor...
Če bi, potem bi ob naslednjem vprašanju izpisal vsebino sndr, cert, chain in error. Ali si morda samostojno ugotovil, da ni potrebno?
jazuporabnik ::
A si naredil tole ali želiš reči, da ti takšna koda ne deluje?
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12; System.Net.ServicePointManager.ServerCertificateValidationCallback = (sndr, cert, chain, error) => { //return true; //Če si junak :-) }; // <-- Sem postavi breakpoint in preglej sndr, cert, chain, error
Nič nam tudi nisi povedal o svojem projektu. Kateri .NET in tip projekta?
Zaenkrat sem samo prenesel projekt iz FURS-a, ki pa je na .NET 4.5. Sem poskusil dve stvari, na dveh računalnikih in očitno je nekaj narobe z računalnikom, ker na drugem računalniku gre njihova koda čez "ServerCertificateValidationCallBack += RemoteCertificateValidationCallback(ValidateServerCertificate); in dobim echo response, ampak se naprej pojavi napaka pri prijavi PP, da XML ni v skladu z xml shemo :( joooooo
Tako da je nekaj narobe s tistim PC-jem.
windigo ::
Sorry, imaš prav, tudi null parametri normalno ne mečejo exceptionov na Delegate.Combine oz. kompajler vse prav razreši.
Sem šel potem gledat implementacijo in našel edino tolele na seterju, ampak zadeva ni ravno indikativna za tip napake, ki si jo prijavil:
ExceptionHelper.InfrastructurePermission.Demand();
Sem šel potem gledat implementacijo in našel edino tolele na seterju, ampak zadeva ni ravno indikativna za tip napake, ki si jo prijavil:
ExceptionHelper.InfrastructurePermission.Demand();
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Davčne blagajne (strani: 1 2 3 4 … 24 25 26 27 )Oddelek: Programiranje | 333529 (73532) | Macketina |
» | [Opera] Unable to complete secure transactionOddelek: Slo-Tech | 2816 (1560) | pegasus |
» | PHP davčna blagajnaOddelek: Programiranje | 8123 (6147) | brble |
» | [JAVA] HTTPS clientOddelek: Programiranje | 3184 (1914) | peterv6i |
» | C++ problem: težava z hirerarhijo razredaOddelek: Programiranje | 1234 (1074) | fiction |