• Category Archives Senza categoria
  • How to consume a web service, through client certification and Oauth2 Authentication, writing c# code.

    Versione Italiana.
    Who has done similar task , using visual studio, knows the IDE helps the developers, providing some classes useful to easly call a webservice. If the developer has available the WSDL file defining the service, Visual studio parses it , and automatically builds the libraries

    But, if the call must use a channel, encrypted by a client certificate, and further the server expect an Oauth2 authentication token , enclosed in the request, the task becomes quite harder

    With C# it’s quite simple to make an HTTP request using a client certificate to make the call, on the same HTTP request and also simple to add the OAuth2 token among the Headers.
    If the request is simple (It has few parameters and is not structured on several levels), the developer can send a raw HTTP request, inserting the parameters in the body of this.
    If instead the parameters of the request are many and very structured, doing such a thing would take a lot of time.

    I found a way to use the libraries generated by Visual studio, on an encrypted channel and with the Oauth2 authentication token.

    Below, is the code that would be used for a call with the usual method:

    var Binding = new BasicHttpBinding();
    EndpointAddress ServiceEndPoint = new EndpointAddress("http://EndpointAddress.com");
    ServiceReference.Serviceclient client = new ServiceReference.Serviceclient(Binding, ServiceEndPoint);
    ServiceReference.ServiceResult result = client.Method(ServiceParameter);

    If you want to make the call on an encrypted channel, you must first create a certificate object:

    X509Certificate2 certificate = new X509Certificate2("filePath.p12", "Password");

    Where the file containing the certificate must be in p12 format and the insertion of its relative password is mandatory.
    Next you need to create a binding type object different from the usual one, while the endpoint object will remain on the same type:

    var Binding = new WSHttpBinding();
    Binding.Security.Mode = SecurityMode.Transport;
    Binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Certificate;
    EndpointAddress ServiceEndPoint = new EndpointAddress(https://EndpointAddress.com);

    Note: This time the endpoint is on HTTPS, no longer on HTTP, indeed this type of binding is compatible only with https.

    Then you need to create the client object and set the certificate on it:

    ServiceReference.Serviceclient client = new ServiceReference.Serviceclient(Binding, ServiceEndPoint);
    ServiceReference.ServiceResult result = client.Method(ServiceParameter);
    
    Client.ClientCredentials.ServiceCertificate.SslCertificateAuthentication = 
    new System.ServiceModel.Security.X509ServiceCertificateAuthentication();
    System.ServiceModel.Security.X509CertificateInitiatorClientCredential certificateInitiator = 
    Client.ClientCredentials.ClientCertificate;
    certificateInitiator.Certificate = certificate;

    With this we have set up communication through the certified channel, now we must make sure that a token at our convenience is also included in the header of the generated HTTPS request. This is quite complicated, to be able to do it you need to act on the context of the call:

    using (OperationContextScope scope = new OperationContextScope(client.InnerChannel))
    {
           MessageHeader<string> header = new MessageHeader<string>("Bearer " + Oautoken);
           var untyped = header.GetUntypedHeader("Authorization", "");
           OperationContext.Current.OutgoingMessageHeaders.Add(untyped);
           HttpRequestMessageProperty requestMessage = new 
           HttpRequestMessageProperty();
           requestMessage.Headers["Authorization"] = "Bearer " + "TokenString";          
           OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] 
           = requestMessage;
           result = client.method(serviceParameter);
    }


  • Diventa anche tu un tester!!

    Hai mai sognato di essere una di quelle persone che vedi su Youtube fare le recensioni sui nuovi prodotti, e magari di poter ricevere gratuitamente tutti questi prodotti?

    Adesso lo puoi fare, ti basta seguire questo Link.

    Per poter effettuare questi test ti è sufficiente avere un account Amazon, che ti serve per poter acquistare gli oggetti che ti vengono proposti, e un account Paypal , che serve ai gestori di questo servizio per farti avere il denaro necessario a comprare i prodotti attraverso Amazon.

    Quello che ti viene richiesto è di fornire una recensione su Amazon per ogni prodotto che ti è stato “fornito” in questo modo. Non è necessario che tu registri una recensione come un tester professionista su Youtube, è sufficiente la sola recensione su Amazon.

    Il numero di oggetti che potrai richiedere contemporaneamente , salirà con il numero di Task completati. Per Task si intende tutta la serie di operazioni necessarie per ogni singolo prodotto: Richiesta sul sito, Ordine su Amazon, Ricezione del pacco, Testing e scrittura della recensione.

    Ricordati di iscriverti direttamente utilizzando il link che ti ho fornito io. E’ mio personale ed io ho già completato con successo molti task. Quindi iscrivendoti con quel link, farai sapere ai gestori del sito che sei amico mio (ovvero una persona affidabile) e potrai avere fin da subito molti prodotti disponibili. Di norma i primi task disponibili cominciano ad apparire il giorno successivo all’iscrizione.

    Sempre perché ti invito come amico, e quindi per te ci metto la faccia, vedi di comportarti bene e di completare i task una volta che li hai  iniziati. Quelli che si fanno dare i soldi per acquistare i prodotti, e poi scappano senza comprarli, non sono ben visti dai gestori del sito…

    Il sito è in inglese, ma alla portata di tutti. Comunque per ogni informazione riguardo al funzionamento non esitare a scrivermi.

    Buon divertimento!! 😀

     


  • Configurazione di un modem router.

    Molto spesso quando acquistiamo un router troviamo nella confezione anche un cd per l’installazione.
    Sappiate che, a meno che il router non funzioni anche attraverso la porta usb questo cd non è assolutamente necessario.
    Spiegherò passo passo come configurare manualmente un router
    Per prima cosa è necessario collegare tutti i cavi come descritto nelle istruzioni (telefono, Ethernet, alimentazione)
    Dopo aver fatto questo il nostro computer stabilirà autonomamente una connessione con il router. A questo punto dovremo indagare nelle impostazioni di rete per trovare l’indirizzo del “Gateway” un indirizzo IP che non è altro che una serie di 4 numeri separati da un punto. (Ad esempio 192.164.0.1)
    Ora apriamo il browser per navigare e li scriviamo nella barra degli indirizzi, il numero che abbiamo appena trovato e premiamo Invio.
    Si aprirà la schermata per le impostazioni del router sotto forma di sito internet.
    Dobbiamo navigare all’interno di questo “sito” per cercare la pagina con le impostazioni di connessione. In quella pagina inseriremo i parametri per la connessione(username e password) che ci sono stati dati dal nostro provider per la connessione.
    Dopo aver inserito questi dati e aver salvato le modifiche il gioco è fatto, il router dovrebbe connettersi e permettere ai computer ad esso collegati di navigare in internet.


  • Immagini di dischi.

    Che cosa sono le immagini dei CD e dei dvd di cui si sente parlare?
    Non sono altro che file, in cui sono contenute tutte le informazioni che sono nel supporto ottico dal quale sono state create, tali per cui dal file dell’immagine è possibile riprodurre una copia del supporto.
    La cosa buona in questo è che creando l’immagine di un cd o un dvd questo puo essere trasportato all’interno di una penna USB, che è molto più piccola e pratica.
    Per utilizzare l’immagine di un supporto non occorre necessariamente masterizzare il contenuto dell’immagine su di un supporto, ma possiamo utilizzare un tool come ad esempio Daemon Tools che ci permette di accedere al contenuto dell immagine senza masterizzare nulla.
    Per esempio, mettiamo che io abbia un dvd da cui non mi voglio separare per nessuna ragione al mondo, anche un mio amico vuole questo dvd, e nessuno di noi due possiede un masterizzatore.
    Come posso fare?
    Semplicissimo, mi basta creare un immagine del dvd, farla avere al mio amico ,in un qualsiasi modo( tramite penna usb o tramite internet) il mio amico userà l’immagine con Daemon tools, e per lui sarà come avere il dvd originale.
    Vediamo in maniera più dettagliata i passi da compiere.
    Per creare un immagine , dovrò utilizzare un programma di masterizzazione, Clone cd , Nero Burning o lo stesso Daemon tools vanno benissimo.(Con il primo è facilissimo, c’è un tasto apposta nella schermata principale, con il secondo è un po più laborioso, occorre effettuare una copia di un supporto senza effettuare l’eliminazione dell’immagine a copia avvenuta)
    Una volta che avrò i file dell immagine (.CCD e .CUE nel primo caso, .NRG nel secondo) farò avere questi al mio amico.
    Il mio amico installerà Daemon tools nel suo computer, e questo provvederà a creare un lettore di supporti ottici virtuale.
    Da quel momento in poi il mio amico potrà inserire le immagini dei Dvd nel supporto virtuale come se fossero veri dischi, e funzioneranno allo stesso modo.


  • Dati al sicuro con Winrar.

    Ora spiegherò comè è possibile utilizzando il programma winrar, mettere al sicuro i propri dati da sguardi indiscreti

    Per prima cosa bisogna creare una cartella, nella quale inseriremo tutti i file che vogliamo proteggere.

    Dopo avere copiato i file nella cartella , apriamo il programma winrar,ci posizioniamo con l’explorer di questo programma all’interno della cartella creata e selezioniamo tutti i file che vogliamo proteggere.

    Premiamo il tasto archivia.

    Ci viene mostrata una finestra nella quale possiamo impostare diverse opzioni, scegliamo un nome per l’archivio e il suo formato, che deve essere  .RAR e andiamo alla scheda “Avanzati” dove premiamo il pulsante “parola chiave”.

    Nelle finestra che ci viene mostrata, scriviamo la nostra password e clicchiamo su ok. Lasciamo il resto delle opzioni come quelle di default e clicchiamo su OK.

    Winrar ci preparerà l’archivio crittato in modo che soltanto chi possiede la password potrà accedere ai file contenuti.


  • Modificare i menu contestuali di Windows

    I menu contestuali sono quelle liste di opzione che ci appaiono quando facciamo click con il tasto destro del mouse sull’icona di un file. A seconda del tipo di file su di cui facciamo click il menu contestuale cambia.

    E risaputo che la maggior parte dei programmi, quando vengono installati, aggiungono voci ai menù, che poi non verranno rimosse alla disinstallazione. Per non parlare di quei programmi che combinano disastri nei menu, compromettendo perfino il loro funzionamento.

    Per poter correggere questi problemi o modificare il menu come più ci piace possiamo usare un software chiamato ContexEdit che si puo scaricare qui

    il programma permette per ogni tipo di file, di scegliere quali comandi far comparire nel menu contestuale, con quale testo, e quale di questi impostare come comando di default (ovvero quello che si attiva quando facciamo doppio click con il tasto sinistro.)

    contexedit

    Nella parte Sinistra della finestra del programma troviamo l’elenco di tutte i tipo di file registrati dal computer, selezioniamo il tipo di file di cui vogliamo modificare il menu contestuale.

    Dopo aver selezionato il tipo di file possiamo aggiungere modificare rimuovere voci con i tasti nella parte sinistra (new , delete, edit) e possiamo impostare la voce selezionata come quella di default tramite il tasto default.

    Il campo menù text costituisce quello che si legge quando il menu viene aperto.


  • Come evitare di prendere un virus

    Secondo il mio modesto parere è possibile fare a meno di un antivirus. Personalmente sono almeno 4 anni che non ho un antivirus installato sul computer e che nessun virus riescie a contagiare la mia macchina.
    Riporto qui alcuni buoni consigli per ridurre di molto le possibilita di prendere un virus.

    Non utilizzare Internet explorer per navigare su internet. Io consiglio a tutti di utilizzare il browser Mozilla Firefox. Il principio su cui mi baso per dare questo consiglio è il seguente:

    Se un malintenzionato produce un virus, o un qualsiasi altro software malevolo, lo farà in modo che questi si diffonda il più possibile . Per fare questo , la persona deve sfruttare gli errori di programmazione dei software che utilizzano gli utenti. Quindi il nostro amico hacker , forgerà la sua malefica arma di distruzione in modo che possa sfruttare i problemi dei sistemi più utilizzati , appunto per contagiare più sistemi possibile. Visto che Windows e Internet explorer sono i sistemi più utilizzati. Dobbiamo cercare sempre di utilizzare sistemi che non siano quelli che usano tutti. Inviterei gli utenti a non utilizzare Windows, ma sapendo che per l’utente medio è abbastanza difficile trovarsi ad avere a che fare con un altro sistema operativo, cambiare solo il browser internet è già un buon punto.

    Non installare nessuna barra di ricerca aggiuntiva per il browser.

    Le famose barre di ricerca , abbinate a una miriade di programmi scaricabili da internet , le quali ci vengono promesse come miracolose, non sono di alcuna utilità, e per giunta possono causare malfunzionamenti e perdita di prestazioni sul nostro computer. Per non parlare del fatto che essendo installate sul nostro browser, comunicano a destra e a manca tutti i siti che visitiamo.

    Di norma ogni volta che installiamo uno dei suddetti programmi c’è la possibilita di non installare la barra di ricerca a questi abbinata. Il consiglio che  vi do e di non installarla.

    Non aprire i link inviati dagli amici tramite i programmi di instant messagging. O perlomeno, dopo aver ricevuto un messaggio contenente un link, domandare al nostro amico se è stato lui effettivamente ad aver inviato quel link. Se il nostro amico non ne saprà nulla , vorra dire che è stato un virus che ha infettato il computer del nostro amico a mandarcelo, per fare in modo che anche noi ne veniamo contagiati, e molto probabilmente nemmeno il nostro amico sa di avere il computer contagiato da un virus.