Domanda

Qualcuno sa come esattamente funziona l'autenticazione NTLM in WCF / basicHttp? Mi chiedo se le credenziali utente sono passate per ogni singolo metodo chiamata di servizio, o se un qualche tipo di token di protezione viene utilizzato per le chiamate di metodo successivo di servizio.

L'esatta configurazione di legame che sto usando:

<bindings>
  <basicHttpBinding>
    <binding name="winAuthBasicHttpBinding">
      <security mode="TransportCredentialOnly">
        <transport clientCredentialType="Ntlm" />
      </security>
    </binding>
  </basicHttpBinding>
</bindings>

Ho trovato questo tipo di configurazione sul riferimento MSDN. Ma io non sono sicuro se questa è una buona idea prestazione saggia. Un'alternativa sarebbe fornire un personalizzato GetAuthenticationToken () tipo di metodo per fornire un token di sicurezza per tutte le successive richieste del cliente. Ciò potrebbe essere fatto attraverso l'Enterprise Library -. Security Application Block

Per ulteriori informazioni:. Il servizio è consumata dai browser / client Silverlight

È stato utile?

Soluzione

In questo caso qui, verrà autenticato ogni singola chiamata di metodo.

Che cosa stai parlando sarebbe quello che viene chiamato "sessioni protette", in cui il client autentica una volta contro il server e quindi un segno comune è utilizzato per gli scambi successivi. Che sessioni protette dispone però è disponibile solo con wsHttpBinding -. Non con basicHttpBinding

Marc

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top