Поделиться через


ActiveDirectoryMembershipProvider.RequiresQuestionAndAnswer Свойство

Определение

Получает значение, показывающее, настроен ли поставщик участия, чтобы запрашивать пароль при создании пользователя.

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

Значение свойства

true, если объект ActiveDirectoryMembershipProvider сконфигурирован требовать запрос-ответ пароля; в противном случае — false. Значение по умолчанию — false.

Исключения

Была предпринята попытка получить доступ к свойству RequiresQuestionAndAnswer до того, как экземпляр ActiveDirectoryMembershipProvider был инициализирован.

Примеры

В следующем примере кода показана запись Web.config, которая настраивает ActiveDirectoryMembershipProvider экземпляр для включения сброса пароля. В нем используются явные учетные данные пользователя с правом доступа на сброс пароля.

Важно!

Когда вы помещаете учетные данные пользователя в файл Web.config, возникают потенциальные угрозы безопасности. Пользователи с правами доступа к каталогу, в котором содержится файл Web.config, могут прочитать файл и, таким образом, просмотреть учетные данные. Дополнительные сведения о том, как защититься от этой угрозы, см. в разделе Шифрование сведений о конфигурации с помощью защищенной конфигурации.

<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>

Комментарии

Свойство RequiresQuestionAndAnswer задается в файле конфигурации приложения с помощью requiresQuestionAndAnswer атрибута элемента membership Element (ASP.NET Settings Schema). Если свойство не задано в файле конфигурации приложения, свойству RequiresQuestionAndAnswer присваивается значение falseпо умолчанию .

requiresQuestionAndAnswer Если атрибут имеет значение true, необходимо также задать эти дополнительные атрибуты.

  • attributeMapPasswordQuestion и attributeMapPasswordAnswer должны сопоставляться с атрибутами в схеме Active Directory.

Если указанные выше критерии не выполняются, ProviderException при инициализации возникает исключение .

Примечание

При создании пользователя можно задать вопрос и ответ на пароль, но присвойте свойству EnablePasswordReset значение false , чтобы запретить пользователям изменять свои пароли с помощью ActiveDirectoryMembershipProvider класса .

Применяется к

См. также раздел