Quale sicurezza viene utilizzata per impostazione predefinita in WSHttpBinding (lato servizio) o WCF Test client (lato client)?

5

Recentemente ho spostato un servizio da BasicHttpBinding a WSHttpBinding (ad esempio SOAP 1.1 - > SOAP 1.2). In WCF , usando WSHttpBinding () si inizia a utilizzare alcune impostazioni di sicurezza predefinite. Presumo che le stesse impostazioni di sicurezza predefinite vengano utilizzate anche dal client di test WCF poiché il client e il server possono continuare a parlare dopo essere passati al WSHttpBinding "sicuro". In violinista, ho confermato questa impostazione di sicurezza poiché sono in grado di assistere a una più complessa stretta di mano della sicurezza dalla richiesta-risposta, in precedenza semplice e morta,

Prima: (BasicHttpBinding)

  1. [HttpRequest] (Richiesta SOAP in chiaro)

    [HttpResponse] (SOAP Response In Clear)

After: (WSHttpBinding)

  1. [HttpRequest] RequestSecurityToken

    [HttpResponse] RequestSecurityTokenResponse

  2. [HttpRequest] RequestSecurityToken

    [HttpResponse] RequestSecurityTokenResponse

  3. [HttpRequest] RequestSecurityTokenResponse

    [HttpResponse] RequestSecurityTokenResponseCollection

  4. [HttpRequest] EncryptedData

    [HttpResponse] EncryptedData

  5. [HttpRequest] EncryptedData (effettiva richiesta a livello di applicazione)

    [HttpResponse] EncryptedData (effettiva risposta a livello di applicazione)

Quindi posso tranquillamente presumere che venga applicata la sicurezza. Ora alle domande:

Domanda 1: quali sono le impostazioni di sicurezza? Non ho mai detto a WCF alcun fornitore di appartenenza. In effetti non ho alcuna tabella (SQL o XML) di nessun nome utente < - > Le password. Quindi, che tipo di autenticazione sta accadendo? Sebbene il client di test WCF possa autenticare come sopra, SoapUI non acquisisce questi valori predefiniti di Microsoft .NET e presenta problemi. SoapUI tenta le comunicazioni di testo in chiaro e quindi il server risponde con un errore di token di sicurezza non corretto.

Domanda 2: qual è il modello di sicurezza più comunemente praticato per SOAP 1.2? È tramite certificati o password utente o digest o

posta DeepSpace101 03.03.2012 - 03:54
fonte

1 risposta

5

Bene, il famoso WSHTTPBinding. Provoca molto dolore per le piattaforme non- .NET.

Prima di tutto, anche se SOAP 1.2 è uno standard, WSHTTPBinding è un'implementazione Microsoft su SOAP 1.2 e, per esperienza, non è facile come "Il nostro prodotto supporta SOAP 1.2 quindi funzionerà con WCF & Servizi WSHTTPBinding, nessun problema! ".

Risposta 1

Esistono due principali impostazioni di sicurezza:

  • Sicurezza messaggi : il messaggio è parzialmente crittografato, Impostazione predefinita
  • Sicurezza trasporto : utilizza SSL per proteggere il canale

Informazioni sull'autenticazione, WSHTTPBinding utilizza le credenziali di Windows (NTLM o Kerberos) per impostazione predefinita.

Risposta 2

Dipende, ma una risposta breve è:

  • Devi reindirizzare i messaggi o esaminarli: usa Messaggio Sicurezza
  • Hai bisogno di canali point-to-point e puoi proteggerli con certificati: utilizza Sicurezza trasporto
  • I tuoi clienti e server condividere la stessa piattaforma di autenticazione, utilizzare Windows l'autenticazione
  • È necessaria un'autenticazione aperta per gli esterni client o multipiattaforma, utilizza l'autenticazione Nome utente

Informazioni sull'autenticazione Username, ci sono diverse configurazioni. È possibile memorizzare le credenziali in un database SQL, sì (lo facciamo nella nostra azienda per alcuni servizi).

Alcuni casi semplici: Miglioramento della sicurezza dei servizi Web: scenari e guida all'implementazione per WCF

    
risposta data 03.03.2012 - 23:19
fonte

Leggi altre domande sui tag