Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
elemento
Specifica le impostazioni di sicurezza di un servizio locale per questa associazione.
<configuration>
<system.serviceModel>
<bindings>
<customBinding>
<binding>
<security>
<localServiceSettings>
Sintassi
<security>
<localServiceSettings detectReplays="Boolean"
inactivityTimeout="TimeSpan"
issuedCookieLifeTime="TimeSpan"
maxCachedCookies="Integer"
maxClockSkew="TimeSpan"
maxPendingSessions="Integer"
maxStatefulNegotiations="Integer"
negotiationTimeout="TimeSpan"
reconnectTransportOnFailure="Boolean"
replayCacheSize="Integer"
replayWindow="TimeSpan"
sessionKeyRenewalInterval="TimeSpan"
sessionKeyRolloverInterval="TimeSpan"
timestampValidityDuration="TimeSpan" />
</security>
Attributi ed elementi
Nelle sezioni seguenti vengono descritti gli attributi, gli elementi figlio e gli elementi padre.
Attributes
| Attribute | Description |
|---|---|
detectReplays |
Valore booleano che specifica se gli attacchi di riproduzione contro il canale vengono rilevati e gestiti automaticamente. Il valore predefinito è false. |
inactivityTimeout |
Valore positivo TimeSpan che specifica la durata dell'inattività di attesa del canale prima del timeout. Il valore predefinito è "01:00:00". |
issuedCookieLifeTime |
Oggetto TimeSpan che specifica la durata rilasciata a tutti i nuovi cookie di sicurezza. I cookie che superano la loro durata vengono riciclati e devono essere negoziati di nuovo. Il valore predefinito è "10:00:00". |
maxCachedCookies |
Intero positivo che specifica il numero massimo di cookie che possono essere memorizzati nella cache. Il valore predefinito è 1000. |
maxClockSkew |
Oggetto TimeSpan che specifica la differenza di tempo massima tra gli orologi di sistema delle due parti che comunicano. Il valore predefinito è "00:05:00". Quando questo valore è impostato sul valore predefinito, il ricevitore accetta messaggi con timestamp di invio fino a 5 minuti dopo o prima della ricezione del messaggio. I messaggi che non superano il test in fase di invio vengono rifiutati. Questa impostazione viene usata insieme all'attributo replayWindow . |
maxPendingSessions |
Numero intero positivo che specifica il numero massimo di sessioni di sicurezza in sospeso supportate dal servizio. Quando viene raggiunto questo limite, tutti i nuovi client ricevono errori SOAP. Il valore predefinito è 1000. |
maxStatefulNegotiations |
Intero positivo che specifica il numero di negoziati di sicurezza che possono essere attivi contemporaneamente. Le sessioni di negoziazione in eccesso al limite vengono accodate e possono essere completate solo quando diventa disponibile uno spazio inferiore al limite. Il valore predefinito è 1024. |
negotiationTimeout |
Oggetto TimeSpan che specifica la durata dei criteri di sicurezza utilizzati dal canale. Alla scadenza del tempo, il canale rinegozia con il client per un nuovo criterio di sicurezza. Il valore predefinito è "00:02:00". |
reconnectTransportOnFailure |
Valore booleano che specifica se le connessioni che utilizzano WS-Reliable messaggistica tenteranno di riconnettersi dopo gli errori di trasporto. Il valore predefinito è true, il che significa che vengono tentati tentativi di riconnessione infiniti. Il ciclo viene interrotto dal timeout di inattività, che fa sì che il canale generi un'eccezione quando non può essere riconnessa. |
replayCacheSize |
Intero positivo che specifica il numero di nonce memorizzati nella cache utilizzati per il rilevamento della riproduzione. Se questo limite viene superato, il nonce meno recente viene rimosso e viene creato un nuovo nonce per il nuovo messaggio. Il valore predefinito è 500000. |
replayWindow |
Oggetto TimeSpan che specifica la durata in cui i singoli messaggi non sono validi. Dopo questa durata, un messaggio inviato con lo stesso nonce di quello inviato prima non verrà accettato. Questo attributo viene usato insieme all'attributo maxClockSkew per impedire attacchi di riproduzione. Un utente malintenzionato potrebbe riprodurre un messaggio dopo la scadenza della finestra di riproduzione. Questo messaggio, tuttavia, non riuscirà il maxClockSkew test che rifiuta i messaggi con timestamp di invio fino a un'ora specificata successiva o precedente all'ora in cui il messaggio è stato ricevuto. |
sessionKeyRenewalInterval |
Oggetto TimeSpan che specifica la durata dopo la quale l'iniziatore rinnova la chiave per la sessione di sicurezza. Il valore predefinito è "10:00:00". |
sessionKeyRolloverInterval |
Oggetto TimeSpan che specifica l'intervallo di tempo per cui una chiave di sessione precedente è valida nei messaggi in arrivo durante il rinnovo della chiave. Il valore predefinito è "00:05:00". Durante il rinnovo della chiave, il client e il server devono sempre inviare messaggi usando la chiave disponibile più recente. Entrambe le parti accetteranno i messaggi in arrivo protetti con la chiave di sessione precedente fino alla scadenza del tempo di rollover. |
timestampValidityDuration |
TimeSpan Positivo che specifica la durata in cui un timestamp è valido. Il valore predefinito è "00:15:00". |
Elementi figli
Nessuno.
Elementi padre
| Elemento | Description |
|---|---|
| <sicurezza> | Specifica le opzioni di sicurezza per un'associazione personalizzata. |
| <secureConversationBootstrap> | Specifica i valori predefiniti usati per avviare un servizio di conversazione sicuro. |
Osservazioni:
Le impostazioni sono locali perché non vengono pubblicate come parte dei criteri di sicurezza del servizio e non influiscono sull'associazione del client.
Gli attributi seguenti dell'elemento localServiceSecuritySettings consentono di attenuare un attacco di sicurezza Denial of Service (DOS):
maxCachedCookies: controlla il numero massimo di securitycontextTokens con limiti di tempo memorizzati nella cache dal server dopo l'esecuzione della negoziazione SPNEGO o SSL.issuedCookieLifetime: controlla la durata dell'oggetto SecurityContextTokens rilasciato dal server che segue la negoziazione SPNEGO o SSL. Il server memorizza nella cache SecurityContextTokens per questo periodo di tempo.maxPendingSessions: controlla il numero massimo di conversazioni sicure stabilite nel server, ma per cui non sono stati elaborati messaggi dell'applicazione. Questa quota impedisce ai client di stabilire conversazioni sicure al servizio, causando così che il servizio mantenga lo stato per ogni client, ma non li usi mai.inactivityTimeout: controlla il tempo massimo per cui il servizio mantiene attiva una conversazione sicura senza ricevere mai un messaggio dell'applicazione. Questa quota impedisce ai client di stabilire conversazioni sicure al servizio, causando così che il servizio mantenga lo stato per ogni client, ma non li usi mai.
In una sessione di conversazione sicura si noti che entrambi inactivityTimeout gli receiveTimeout attributi dell'associazione influiscono sul timeout della sessione. Il più breve dei due determina quando si verificano timeout.
Vedere anche
- LocalServiceSecuritySettingsElement
- LocalServiceSettings
- LocalServiceSettings
- LocalServiceSecuritySettings
- CustomBinding
- Collegamenti
- Estensione delle associazioni
- binding personalizzati
- <Custombinding>
- Procedura: Creare un'associazione personalizzata usando SecurityBindingElement
- Sicurezza dell'associazione personalizzata