HttpWebRequest.UnsafeAuthenticatedConnectionSharing Proprietà

Definizione

Ottiene o imposta un valore che indica se consentire la condivisione di connessione con autenticazione NTLM ad alta velocità.

public:
 property bool UnsafeAuthenticatedConnectionSharing { bool get(); void set(bool value); };
public bool UnsafeAuthenticatedConnectionSharing { get; set; }
member this.UnsafeAuthenticatedConnectionSharing : bool with get, set
Public Property UnsafeAuthenticatedConnectionSharing As Boolean

Valore della proprietà

true per tenere aperta la connessione autenticata; in caso contrario, false.

Commenti

Il valore predefinito per questa proprietà è false, che causa la chiusura della connessione corrente dopo il completamento di una richiesta. L'applicazione deve passare attraverso la sequenza di autenticazione ogni volta che emette una nuova richiesta.

Se questa proprietà è impostata su true, la connessione utilizzata per recuperare la risposta rimane aperta dopo l'esecuzione dell'autenticazione. In questo caso, altre richieste con questa proprietà impostata su true possono usare la connessione senza ripetere l'autenticazione. In altre parole, se una connessione è stata autenticata per l'utente A, l'utente B può riutilizzare la connessione di A; la richiesta dell'utente B viene soddisfatta in base alle credenziali dell'utente A.

Attenzione

Poiché è possibile che un'applicazione usi la connessione senza essere autenticata, è necessario assicurarsi che non vi sia alcuna vulnerabilità amministrativa nel sistema quando si imposta questa proprietà su true. Se l'applicazione invia richieste per più utenti (rappresenta più account utente) e si basa sull'autenticazione per proteggere le risorse, non impostare questa proprietà su true a meno che non si usino gruppi di connessioni come descritto di seguito.

È consigliabile abilitare questo meccanismo se si verificano problemi di prestazioni e l'applicazione è in esecuzione in un server Web con autenticazione di Windows integrato.

L'abilitazione di questa impostazione apre il sistema ai rischi per la sicurezza. Se si imposta la UnsafeAuthenticatedConnectionSharing proprietà per true assicurarsi di adottare le precauzioni seguenti:

  • Utilizzare la ConnectionGroupName proprietà per gestire le connessioni per utenti diversi. In questo modo si evita l'uso potenziale della connessione da parte di applicazioni non autenticate. Ad esempio, l'utente A deve avere un nome di gruppo di connessione univoco diverso dall'utente B. In questo modo viene fornito un livello di isolamento per ogni account utente.

  • Eseguire l'applicazione in un ambiente protetto per evitare possibili exploit di connessione.

Se si controlla il server back-end, in alternativa è possibile disattivare la persistenza dell'autenticazione. Ciò aumenta le prestazioni in modo minore, ma è più sicuro. Per altre informazioni, vedere AuthPersistence.

Nota

Se entrambi PreAuthenticate e UnsafeAuthenticatedConnectionSharing sono impostati su true, ogni richiesta viene inviata usando una connessione dal pool unsafe, ma con un'intestazione Authorization.

Si applica a