Ultimi argomenti attivi
» RENTRI: Dubbi e curiositàDa urgada Mer Nov 20, 2024 10:52 pm
» Rentri: conservazione digitale costi
Da Paolo UD Mer Nov 13, 2024 12:09 pm
» Scheda Materiali
Da MagoMerlino Mer Nov 06, 2024 1:48 pm
» capacità finanziaria dimostrabile con la LIPE ?
Da Sciùr Colombo Lun Nov 04, 2024 5:07 pm
» RENTRI: sistemi di geolocalizzazione per il trasporto di rifiuti pericolosi
Da Paolo UD Gio Ott 31, 2024 11:36 am
» Rientri. Trasporti conto terzi
Da Transporter Mer Ott 16, 2024 7:53 pm
» Rnera fondo giallo sui colli di rifiuti pericolosi - responsabilità condivisa?
Da lotus1 Mar Set 17, 2024 1:23 pm
» Mud - Errore sul civico: E' da reinviare?
Da Paolo UD Lun Ago 05, 2024 10:51 am
» 1263 - curiosità
Da lotus1 Ven Ago 02, 2024 11:59 am
» Ritiro rifiuti da privati - Sentenza CdS 29 Maggio 2023 n. 5257
Da skywalker2016 Mar Lug 30, 2024 10:44 am
Procedura testata per chi sviluppa in VB
4 partecipanti
Pagina 2 di 2
Pagina 2 di 2 • 1, 2
Procedura testata per chi sviluppa in VB
Promemoria primo messaggio :
Procedura che opera in ambiente effettivo per applicativi in VB
1. Modificare l’endpoint http://172...... Con https://sisssl.sistri.it/SIS/services/SIS? wsdl
2. Avere un certificato valido in formato p12
3. Il file wsdl così modificato deve essere caricato nel vostro applicativo dal comando “aggiungere riferimento al servizio”
4. Modificare il file app.config (presente in esplora soluzioni) parametro ‘clientcredentialtype’
<security mode="Transport">
<transport clientCredentialType="Certificate" proxyCredentialType="None"
realm="" />
5. Metodo GetversioneSIS
Dim obj1 As SIS_WSDLClient = New SIS_WSDLClient
Dim obj5 As SIS_WSDLClient = New SIS_WSDLClient()
Dim identity = "userid******"
Dim store As New X509Store("teststore", StoreLocation.CurrentUser)
store.Open(OpenFlags.ReadWrite)
Dim certificate As New X509Certificate2()
Dim certificate1 As New X509Certificate2("c:\certificato.p12", "eventuale password certificato")
Dim collection As New X509Certificate2Collection()
collection.Add(certificate1)
store.Add(certificate1)
store.AddRange(collection)
obj1.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.CurrentUser, _
StoreName.My, X509FindType.FindBySubjectName,“CN=nome certificato”)
Dim versione2 = obj1.GetVersioneSIS(identity)
MsgBox(versione2)
6. Metodo GetAzienda
Dim obj1 As SIS_WSDLClient = New SIS_WSDLClient
Dim obj5 As SIS_WSDLClient = New SIS_WSDLClient()
Dim identity = "userid****"
Dim codfisc1 = "codice fiscale azienda"
Dim obj2 As ParametriAggiuntivi = New ParametriAggiuntivi
obj1.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.CurrentUser, _
StoreName.My, X509FindType.FindBySubjectName,”CN=nome certificato")
Dim campo1 = obj1.GetAzienda(identity, obj2, codfisc1).ragioneSociale
MsgBox(campo1)
************* Per la gestione errori SISEXCEPTION *********
Prima di invocare il metodo
Try
....... Metodo......
Catch error1 As FaultException(Of SISException)
Dim errormsg As String = error1.Detail.Nodes(1).InnerText
Dim errorcode As String = error1.Detail.Nodes(0).InnerText
MsgBox(errorcode)
MsgBox(errormsg)
End Try
Con questa routine potete leggere eventuali errori generati dall'applicazione
Procedura che opera in ambiente effettivo per applicativi in VB
1. Modificare l’endpoint http://172...... Con https://sisssl.sistri.it/SIS/services/SIS? wsdl
2. Avere un certificato valido in formato p12
3. Il file wsdl così modificato deve essere caricato nel vostro applicativo dal comando “aggiungere riferimento al servizio”
4. Modificare il file app.config (presente in esplora soluzioni) parametro ‘clientcredentialtype’
<security mode="Transport">
<transport clientCredentialType="Certificate" proxyCredentialType="None"
realm="" />
5. Metodo GetversioneSIS
Dim obj1 As SIS_WSDLClient = New SIS_WSDLClient
Dim obj5 As SIS_WSDLClient = New SIS_WSDLClient()
Dim identity = "userid******"
Dim store As New X509Store("teststore", StoreLocation.CurrentUser)
store.Open(OpenFlags.ReadWrite)
Dim certificate As New X509Certificate2()
Dim certificate1 As New X509Certificate2("c:\certificato.p12", "eventuale password certificato")
Dim collection As New X509Certificate2Collection()
collection.Add(certificate1)
store.Add(certificate1)
store.AddRange(collection)
obj1.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.CurrentUser, _
StoreName.My, X509FindType.FindBySubjectName,“CN=nome certificato”)
Dim versione2 = obj1.GetVersioneSIS(identity)
MsgBox(versione2)
6. Metodo GetAzienda
Dim obj1 As SIS_WSDLClient = New SIS_WSDLClient
Dim obj5 As SIS_WSDLClient = New SIS_WSDLClient()
Dim identity = "userid****"
Dim codfisc1 = "codice fiscale azienda"
Dim obj2 As ParametriAggiuntivi = New ParametriAggiuntivi
obj1.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.CurrentUser, _
StoreName.My, X509FindType.FindBySubjectName,”CN=nome certificato")
Dim campo1 = obj1.GetAzienda(identity, obj2, codfisc1).ragioneSociale
MsgBox(campo1)
************* Per la gestione errori SISEXCEPTION *********
Prima di invocare il metodo
Try
....... Metodo......
Catch error1 As FaultException(Of SISException)
Dim errormsg As String = error1.Detail.Nodes(1).InnerText
Dim errorcode As String = error1.Detail.Nodes(0).InnerText
MsgBox(errorcode)
MsgBox(errormsg)
End Try
Con questa routine potete leggere eventuali errori generati dall'applicazione
Ultima modifica di lucky2005 il Mar Apr 05, 2011 5:26 pm - modificato 6 volte.
lucky2005- Utente Attivo
- Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania
Re: Procedura testata per chi sviluppa in VB
Allora ho riletto tutto l'altro post 'Sistri e visualstudio' in cui mi sembrava esserci la risposta, ed infatti l'ho trovata.
Il nome certificato lo si recupera visualizzando i dettagli del certificato all'interno di Internet Explorer.
Finalmente adesso ho accesso anche io all'interoperabilità.
Grazie a tutti.
Il nome certificato lo si recupera visualizzando i dettagli del certificato all'interno di Internet Explorer.
Finalmente adesso ho accesso anche io all'interoperabilità.
Grazie a tutti.
mary69- Membro della community
- Messaggi : 12
Data d'iscrizione : 07.12.10
Sono rimasto indietro..
Ciao a causa di un progettino ho perso un po il filo...
Il mio problema è quello che aveva massimo 2000 " impossibile relazione di trust etc ect "
Chiedo a Massimo che cortesemente ha postato il link se può passarmi il suo metodo in quanto anche se prendo spunto dalla guida continiuo a ricevere l'errore
Grazie
Ciao
Il mio problema è quello che aveva massimo 2000 " impossibile relazione di trust etc ect "
Chiedo a Massimo che cortesemente ha postato il link se può passarmi il suo metodo in quanto anche se prendo spunto dalla guida continiuo a ricevere l'errore
Grazie
Ciao
sandrino71- Membro della community
- Messaggi : 27
Data d'iscrizione : 01.11.10
Re: Procedura testata per chi sviluppa in VB
sandrino71 ha scritto:Ciao a causa di un progettino ho perso un po il filo...
Il mio problema è quello che aveva massimo 2000 " impossibile relazione di trust etc ect "
Chiedo a Massimo che cortesemente ha postato il link se può passarmi il suo metodo in quanto anche se prendo spunto dalla guida continiuo a ricevere l'errore
Grazie
Ciao
Ecco il codice che ho inserito
Dim identity = "aaaa.bbbb1234"
Dim obj1 As SIS_WSDLClient = New SIS_WSDLClient
Private Shared Function CertificateHandler(ByVal sender As Object, ByVal certificate As X509Certificate, ByVal chain As X509Chain, ByVal SSLerror As SslPolicyErrors) As Boolean
Return True
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'GetVersioneSIS
System.Net.ServicePointManager.ServerCertificateValidationCallback = AddressOf CertificateHandler
Dim versione2 = obj1.GetVersioneSIS(identity)
msgbox(versione2)
End Sub
Devi anche mettere:
Imports System.Security.Cryptography.X509Certificates
Imports System.Net.Security
Massimo2000- Membro della community
- Messaggi : 20
Data d'iscrizione : 22.02.11
Re: Procedura testata per chi sviluppa in VB
Credo che utilizzare questa procedura sia sbagliato perchè si bypassa la connessione con certificato. Magari funziona con alcuni metodi ma con altri non può funzionare.
Avete installato il RootCaSistri tra le autorità attendibili ?
Avete installato il RootCaSistri tra le autorità attendibili ?
lucky2005- Utente Attivo
- Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania
Re: Procedura testata per chi sviluppa in VB
lucky2005 ha scritto:Credo che utilizzare questa procedura sia sbagliato perchè si bypassa la connessione con certificato. Magari funziona con alcuni metodi ma con altri non può funzionare.
Avete installato il RootCaSistri tra le autorità attendibili ?
Adesso ho capito il problema ... non avevo importato il certificato RootCA Sistri.
Grazie di nuovo.
Massimo2000- Membro della community
- Messaggi : 20
Data d'iscrizione : 22.02.11
Errore..
Ciao grazie per aver postato il codice
io purtroppo ottengo ancora errori questo è l'ultimo;
"Richiesta HTTP vietata con lo schema di autenticazione client 'Anonymous'."
Scusate ma il rootCa sistri qual'è non mi ricordo più ??
------------------------------
Questo è il mio codice dentro il quale ho inserito la funzione consigliata da massimo2000
Senza questa funzione ottengo come errore " impossibile eseguire relazioni di trust"...
Chiedo a Lucky se per cortesia riesce ad avvallare questo codice in modo che se ho ancora problemi probabilmente è il certificato
Grazie
----------------------------
Private Shared Function CertificateHandler(ByVal sender As Object, ByVal certificate As X509Certificate, ByVal chain As X509Chain, ByVal SSLerror As SslPolicyErrors) As Boolean
Return True
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
System.Net.ServicePointManager.ServerCertificateValidationCallback = AddressOf CertificateHandler
'Dim versione2 = obj1.GetVersioneSIS(identity)
Dim obj1 As ServiceReference1.SIS_WSDLClient = New ServiceReference1.SIS_WSDLClient
Dim identity = "paperino"
Dim codfisc1 = "pippo"
Dim obj2 As ParametriAggiuntivi = New ParametriAggiuntivi
Dim store As New X509Store("teststore", StoreLocation.CurrentUser)
store.Open(OpenFlags.ReadWrite)
Dim certificate1 As New X509Certificate2("p:\certificate.p12", "password")
Dim collection As New X509Certificate2Collection()
collection.Add(certificate1)
store.Add(certificate1)
store.AddRange(collection)
obj1.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.CurrentUser, _
StoreName.My, X509FindType.FindBySubjectName, "nome del certificato senza cn=")
Dim campo1 = obj1.GetAzienda(identity, obj2, codfisc1).ragioneSociale
MsgBox(campo1)
End Sub
--------------------------------------------------
io purtroppo ottengo ancora errori questo è l'ultimo;
"Richiesta HTTP vietata con lo schema di autenticazione client 'Anonymous'."
Scusate ma il rootCa sistri qual'è non mi ricordo più ??
------------------------------
Questo è il mio codice dentro il quale ho inserito la funzione consigliata da massimo2000
Senza questa funzione ottengo come errore " impossibile eseguire relazioni di trust"...
Chiedo a Lucky se per cortesia riesce ad avvallare questo codice in modo che se ho ancora problemi probabilmente è il certificato
Grazie
----------------------------
Private Shared Function CertificateHandler(ByVal sender As Object, ByVal certificate As X509Certificate, ByVal chain As X509Chain, ByVal SSLerror As SslPolicyErrors) As Boolean
Return True
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
System.Net.ServicePointManager.ServerCertificateValidationCallback = AddressOf CertificateHandler
'Dim versione2 = obj1.GetVersioneSIS(identity)
Dim obj1 As ServiceReference1.SIS_WSDLClient = New ServiceReference1.SIS_WSDLClient
Dim identity = "paperino"
Dim codfisc1 = "pippo"
Dim obj2 As ParametriAggiuntivi = New ParametriAggiuntivi
Dim store As New X509Store("teststore", StoreLocation.CurrentUser)
store.Open(OpenFlags.ReadWrite)
Dim certificate1 As New X509Certificate2("p:\certificate.p12", "password")
Dim collection As New X509Certificate2Collection()
collection.Add(certificate1)
store.Add(certificate1)
store.AddRange(collection)
obj1.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.CurrentUser, _
StoreName.My, X509FindType.FindBySubjectName, "nome del certificato senza cn=")
Dim campo1 = obj1.GetAzienda(identity, obj2, codfisc1).ragioneSociale
MsgBox(campo1)
End Sub
--------------------------------------------------
sandrino71- Membro della community
- Messaggi : 27
Data d'iscrizione : 01.11.10
Re: Procedura testata per chi sviluppa in VB
Ma è incompatibile ciò che hai scritto nella prima parte eludi il certificato(e come ho scritto prima è una procedura sbagliata) e nella seconda parte richiami il certificato utilizzando la connessione ssl.
Controlla in Internet Explorer nei certificati se tra le fonti attendibili esiste RootCaSistri
Controlla in Internet Explorer nei certificati se tra le fonti attendibili esiste RootCaSistri
lucky2005- Utente Attivo
- Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania
Recuperare ID_SIS
Ciao Lucky ok ora ho provato i metodi " versione " e "azienda" e funzionano.
Sto leggendo la guida ma non ho capito come si recupera il valore ID_SIS che ci server per gli altri metodi
Grazie
Ciao
Sto leggendo la guida ma non ho capito come si recupera il valore ID_SIS che ci server per gli altri metodi
Grazie
Ciao
sandrino71- Membro della community
- Messaggi : 27
Data d'iscrizione : 01.11.10
Re: Procedura testata per chi sviluppa in VB
Per IDSIS anagrafica :
Dim idsisanagrafica = obj1.GetAzienda(identity, obj2, codfisc).idSIS
Per IDSIS SEde
Dim idsissede = obj1.GetAzienda(identity, obj2, codfisc).sedeLegale.idSIS
ma per adesso ti servono a poco perchè quanto vai ad interrogare altri metodi ti ritorna l'errore "utente non abilitato" sicuramente ancora non possiamo utilizzare in effettivo il sistri.
Dim idsisanagrafica = obj1.GetAzienda(identity, obj2, codfisc).idSIS
Per IDSIS SEde
Dim idsissede = obj1.GetAzienda(identity, obj2, codfisc).sedeLegale.idSIS
ma per adesso ti servono a poco perchè quanto vai ad interrogare altri metodi ti ritorna l'errore "utente non abilitato" sicuramente ancora non possiamo utilizzare in effettivo il sistri.
lucky2005- Utente Attivo
- Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania
Re: Procedura testata per chi sviluppa in VB
Grazie lucky per la tua disponibilità.
Mi dici per favore quale metodo ti ha dato ad esempio " utente non abilitato" in modo da vedere che errore ottengo.
Un'ultima cosa: Hai per caso individuato qual'è il metodo che espone tutta la scheda sistri chiusa?
Grazie
Ciao
Mi dici per favore quale metodo ti ha dato ad esempio " utente non abilitato" in modo da vedere che errore ottengo.
Un'ultima cosa: Hai per caso individuato qual'è il metodo che espone tutta la scheda sistri chiusa?
Grazie
Ciao
sandrino71- Membro della community
- Messaggi : 27
Data d'iscrizione : 01.11.10
Re: Procedura testata per chi sviluppa in VB
Per la gestione degli errori devi utilizzare il metodo SISexception come nel post iniziale.
Per la gestione della scheda non potendo testare l'idsis non i sono cimentato più di tanto.
Sto in ogni caso predisponendo l'applicativo per la verifica degli allineamenti , per la ricezione del numero del registro cronologico , lettura codici Cer e altro. Ma ovviamente senza avere la possibilità di provare.
Per la gestione della scheda non potendo testare l'idsis non i sono cimentato più di tanto.
Sto in ogni caso predisponendo l'applicativo per la verifica degli allineamenti , per la ricezione del numero del registro cronologico , lettura codici Cer e altro. Ma ovviamente senza avere la possibilità di provare.
lucky2005- Utente Attivo
- Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania
Anagrafiche
Ciao Lucky scusa se ti stresso ma per il discorso delle anagrafiche non ho capito leggendo il manuale se si deve fare una query per estrapolare tutte le anagrafiche per avere gli id_sis dei miei attuali fornitori?
Grazie
Ciao
Grazie
Ciao
sandrino71- Membro della community
- Messaggi : 27
Data d'iscrizione : 01.11.10
Re: Procedura testata per chi sviluppa in VB
Quella che ho indicato io è IDSIS dell'anagrafica dell'Azienda
lucky2005- Utente Attivo
- Messaggi : 69
Data d'iscrizione : 07.02.11
Località : Catania
Pagina 2 di 2 • 1, 2
Argomenti simili
» Per chi sviluppa in VB6?
» Registrazione di formulari sul registro cronologico Sistri
» PROCEDURA PRODUTTORE
» Si può fare una procedura con DM 05/02/98
» Procedura e autorizzazioni
» Registrazione di formulari sul registro cronologico Sistri
» PROCEDURA PRODUTTORE
» Si può fare una procedura con DM 05/02/98
» Procedura e autorizzazioni
Pagina 2 di 2
Permessi in questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum.