Condividi tramite


ActiveDirectoryMembershipProvider.EnablePasswordReset Proprietà

Definizione

Ottiene un valore che indica se l'istanza della classe ActiveDirectoryMembershipProvider è configurato in modo da consentire agli utenti di reimpostare le loro password.

public:
 virtual property bool EnablePasswordReset { bool get(); };
public override bool EnablePasswordReset { get; }
member this.EnablePasswordReset : bool
Public Overrides ReadOnly Property EnablePasswordReset As Boolean

Valore della proprietà

true se la reimpostazione della password è consentita; in caso contrario, false. Il valore predefinito è false.

Eccezioni

È stato effettuato un tentativo di accesso alla proprietà EnablePasswordReset prima che venisse effettuata l'inizializzazione dell'istanza della classe ActiveDirectoryMembershipProvider.

Esempio

Nell'esempio di codice seguente viene illustrata una voce Web.config che configura un'istanza ActiveDirectoryMembershipProvider per abilitare le reimpostazioni della password. Usa le credenziali esplicite di un utente dato il diritto di accesso "reimposta password".

Importante

Quando si inseriscono le credenziali utente nel file di Web.config, esistono potenziali minacce per la sicurezza. Gli utenti con diritti di accesso alla directory contenente il file Web.config possono leggere il file e quindi visualizzare le credenziali. Per informazioni dettagliate su come proteggersi da questa minaccia, vedere Crittografare le informazioni di configurazione usando la configurazione protetta.

<configuration>
  <connectionStrings>
    <add name="ADService" connectionString="LDAP://ldapServer/" />
  </connectionStrings>
  <system.web>
    <membership defaultProvider="AspNetActiveDirectoryMembershipProvider">
      <providers>
        <add name="AspNetActiveDirectoryMembershipProvider"
          type="System.Web.Security.ActiveDirectoryMembershipProvider,
          System.Web, Version=2.0.3600, Culture=neutral,
          PublicKeyToken=b03f5f7f11d50a3a"
          connectionUsername="UserWithResetPasswordRights"
          connectionPassword="PasswordForUser"
          enablePasswordReset="true"
          requiresQuestionAndAnswer="true"
          attributeMapPasswordQuestion="PasswordQuestionADAttribute"
          attributeMapPasswordAnswer="PasswordAnswerADAttribute"
          attributeMapFailedPasswordAnswerCount="AnswerCountADAttribute"
          attributeMapFailedPasswordAnswerTime="AnswerTimeADAttribute"
          attributeMapFailedPasswordAnswerLockoutTime="LockOutTimeADAttribute" />
      </providers>
    </membership>
  </system.web>
</configuration>

Commenti

La EnablePasswordReset proprietà indica se è possibile usare il metodo per reimpostare la ResetPassword password di un utente. La EnablePasswordReset proprietà è impostata nel file di configurazione dell'applicazione usando l'attributo enablePasswordResetdell'elemento membership (ASP.NET Settings Schema).

È possibile impostare la proprietà true solo quando sono state effettuate le impostazioni dell'elemento dell'elementoEnablePasswordReset ASP.NET Settings Schema.

  • Il parametro requiresQuestionAndAnswer deve essere impostato su true.

  • Lo schema di Active Directory deve essere modificato per contenere attributi per archiviare la domanda e la risposta della password, nonché i tre campi di rilevamento per i tentativi di modifica delle risposte alle password.

  • attributeMapPasswordQuestion, attributeMapPasswordAnswerattributeMapFailedPasswordAnswerCount, attributeMapFailedPasswordAnswerTime, e attributeMapFailedPasswordAnswerLockoutTime deve essere mappato agli attributi nello schema di Active Directory.

Se i criteri precedenti non vengono soddisfatti, viene generata un'inizializzazione ProviderException .

Quando la stringa di connessione nel file di configurazione dell'applicazione specifica un dominio di Active Directory anziché un server specifico, l'istanza ActiveDirectoryMembershipProvider si connetterà sempre al controller di dominio con il ruolo PDC per il dominio per assicurarsi che le modifiche della password siano effettive e siano disponibili quando viene chiamato il ValidateUser metodo.

Nota

Anche se la EnablePasswordReset proprietà è true, non è possibile reimpostare le password utente a meno che le credenziali usate per connettersi al server Active Directory abbiano diritti di amministratore di dominio (non consigliato) o il diritto di accesso "reimposta password".

Si applica a

Vedi anche