Condividi tramite


<elemento peerAuthentication>

Specifica le opzioni di autenticazione dei client peer-to-peer.

Per altre informazioni sulla programmazione peer-to-peer, vedere Rete peer-to-peer.

<Configurazione>
  <system.serviceModel>
    <Comportamenti>
      <endpointBehaviors>
        <Comportamento>
          <Clientcredentials>
            <compagno>
              <peerAuthentication>

Sintassi

<peerAuthentication customCertificateValidatorType="namespace.typeName, [,AssemblyName] [,Version=version number] [,Culture=culture] [,PublicKeyToken=token]"
                    certificateValidationMode="ChainTrust/None/PeerTrust/PeerOrChainTrust/Custom"
                    revocationMode="NoCheck/Online/Offline"
                    trustedStoreLocation="CurrentUser/LocalMachine" />

Attributi ed elementi

Nelle sezioni seguenti vengono descritti attributi, elementi figlio ed elementi padre.

Attributi

Attributo Descrizione
customCertificateValidatorType Stringa facoltativa. Un tipo e un assembly usati per convalidare un tipo personalizzato. Questo attributo deve essere impostato quando certificateValidationMode è impostato su Custom.
certificateValidationMode Enumerazione facoltativa. Specifica una delle tre modalità usate per convalidare credenziali. Se impostato su Custom, è necessario fornire anche un customCertificateValidator. Il valore predefinito è ChainTrust.
revocationMode Enumerazione facoltativa. Una delle modalità usate per verificare un elenco dei certificati revocati. Il valore predefinito è Online.
trustedStoreLocation Enumerazione facoltativa. Uno di due percorsi dell'archivio di sistema: LocalMachine o CurrentUser. Questo valore viene usato quando viene negoziato un certificato del servizio con il client. La convalida viene eseguita con l'archivio di Persone attendibile nel percorso dell'archivio specificato. Il valore predefinito è CurrentUser.

Attributo customCertificateValidatorType

Valore Descrizione
string Specifica il nome e l'assembly del tipo e altri dati usati per trovare il tipo. Come minimo, sono necessari uno spazio dei nomi e un nome del tipo. Le informazioni facoltative comprendono il nome dell'assembly, il numero di versione, impostazioni cultura e token della chiave pubblica.

Attributo certificateValidationMode

Valore Descrizione
Enumerazione Uno dei valori seguenti: None, PeerTrust, ChainTrust, PeerOrChainTrust, Custom. Il valore predefinito è ChainTrust.

Per altre informazioni, vedere Uso dei certificati.

Attributo revocationMode

Valore Descrizione
Enumerazione Uno dei valori seguenti: NoCheck, Online, Offline. Il valore predefinito è Online.

Per altre informazioni, vedere Uso dei certificati.

Attributo trustedStoreLocation

Valore Descrizione
Enumerazione Uno dei valori seguenti: LocalMachine o CurrentUser. Il valore predefinito è CurrentUser. Se l'applicazione client viene eseguita con un account di sistema, il certificato è generalmente situato in LocalMachine. Se l'applicazione client viene eseguita con un account utente, il certificato è generalmente situato in CurrentUser.

Elementi figlio

Nessuno.

Elementi padre

Elemento Descrizione
<compagno> Specifica una credenziale usata per l'autenticazione del client con un servizio peer.

Commenti

L'elemento <authentication> corrisponde alla classe X509PeerCertificateAuthentication. Questo elemento specifica una convalida, che viene richiamata durante l'autenticazione tra peer adiacenti nella rete. Quando un nuovo peer tenta di stabilire una connessione con un peer adiacente, passa la propria credenziale al peer che risponde. Viene richiamata la convalida del risponditore per verificare la credenziale della parte remota. Ogni volta che viene stabilita una connessione peer nella rete, entrambi i peer vengono reciprocamente autenticati, indicando che vengono richiamati validator su entrambe le parti.

Esempio

Il codice seguente imposta la modalità di convalida del certificato su PeerOrChainTrust.

<behaviors>
  <endpointBehaviors>
    <behavior name="MyEndpointBehavior">
      <clientCredentials>
        <peer>
          <certificate findValue="www.contoso.com"
                       storeLocation="LocalMachine"
                       x509FindType="FindByIssuerName" />
          <peerAuthentication certificateValidationMode="PeerOrChainTrust" />
          <messageSenderAuthentication certificateValidationMode="None" />
        </peer>
      </clientCredentials>
    </behavior>
  </endpointBehaviors>
</behaviors>

Vedi anche