ActiveDirectoryMembershipProvider.ChangePasswordQuestionAndAnswer 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
Active Directory 저장소에 있는 사용자의 암호 질문 및 대답을 업데이트합니다.
public:
override bool ChangePasswordQuestionAndAnswer(System::String ^ username, System::String ^ password, System::String ^ newPasswordQuestion, System::String ^ newPasswordAnswer);
public override bool ChangePasswordQuestionAndAnswer (string username, string password, string newPasswordQuestion, string newPasswordAnswer);
override this.ChangePasswordQuestionAndAnswer : string * string * string * string -> bool
Public Overrides Function ChangePasswordQuestionAndAnswer (username As String, password As String, newPasswordQuestion As String, newPasswordAnswer As String) As Boolean
매개 변수
- username
- String
암호 질문 및 대답을 변경하려는 사용자입니다.
- password
- String
지정된 사용자의 암호입니다.
- newPasswordQuestion
- String
지정된 사용자의 새 암호 질문입니다.
- newPasswordAnswer
- String
지정된 사용자의 새 암호 대답입니다.
반환
업데이트에 성공했으면 true
이고, 실패했으면 false
입니다. 암호가 정확하지 않거나 계정이 잠겨 있거나 Active Directory 데이터 저장소에 사용자가 존재하지 않는 경우에도 false
값이 반환됩니다.
예외
관리자가 암호 질문 및 대답 필드를 Active Directory 스키마의 특성에 매핑하지 않은 경우
username
이 비어 있거나 사용자 이름의 최대 길이(대개 256자)를 초과하는 경우
또는
username
에 쉼표가 포함된 경우
또는
사용자 이름이 userPrincipalName
특성에 매핑되고 username
매개 변수에 백슬래시가 포함된 경우
또는
password
이 빈 문자열입니다.
또는
password
가 최대 암호 길이(대개 128자)를 초과하는 경우
또는
newPasswordQuestion
이 비어 있고 RequiresQuestionAndAnswer 속성 값이 true
인 경우
또는
newPasswordQuestion
이 256자를 초과하는 경우
또는
대답이 암호화된 후 newPasswordAnswer
가 128자를 초과하는 경우
username
이(가) null
인 경우
또는
password
은 null
입니다.
또는
newPasswordQuestion
이 null
이고 RequiresQuestionAndAnswer 속성이 true
인 경우
또는
newPasswordAnswer
이 null
이고 RequiresQuestionAndAnswer 속성이 true
인 경우
machineKey 요소(ASP.NET 설정 스키마) 구성 요소가 자동 생성된 컴퓨터 암호화 키를 나타내는 경우.
machineKey 요소(ASP.NET 설정 스키마) 요소의 decryptionKey
특성을 명시적으로 설정하여 암호 대답을 ActiveDirectoryMembershipProvider와 함께 저장해야 합니다.
ChangePasswordQuestionAndAnswer(String, String, String, String) 인스턴스가 초기화되기 전에 ActiveDirectoryMembershipProvider 메서드가 호출된 경우
설명
메서드는 Active Directory 멤버 자격 저장소의 ActiveDirectoryMembershipUser 사용자에 대한 암호 질문과 답변을 업데이트하기 위해 클래스에서 호출됩니다.
암호 질문과 대답을 요구하면 사용자의 암호를 재설정할 때 추가 보안 계층이 제공됩니다. 사용자 이름을 만들 때 사용자는 나중에 잊어버린 암호를 재설정하는 데 사용할 수 있는 질문과 답변을 제공할 수 있습니다. 메서드는 ChangePasswordQuestionAndAnswer 멤버 자격 사용자에 대한 암호 질문과 대답을 새 값으로 업데이트합니다.
사용 하기 위해는 ChangePasswordQuestionAndAnswer 메서드, 애플리케이션의 구성 파일에서 이러한 추가 특성을 설정 해야 합니다.
requiresQuestionAndAnswer
는true
여야 합니다.attributeMapPasswordQuestion
및attributeMapPasswordAnswer
는 Active Directory 스키마의 특성에 매핑되어야 합니다.
위의 조건이 충족되지 않으면 초기화 시 가 ProviderException throw됩니다.
인스턴스는 ActiveDirectoryMembershipProvider 및 매개 변수에 제공된 자격 증명을 사용하여 Active Directory 데이터 저장소에 username
password
연결하여 사용자 이름/암호 조합의 유효성을 검사합니다. 질문 및 답변의 실제 업데이트는 공급자의 구성된 연결 자격 증명을 사용하여 수행됩니다.
잘못된 암호가 메서드에 ChangePasswordQuestionAndAnswer 제공된 경우 디렉터리 서버는 잘못된 암호 시도를 추적하는 카운터를 증가합니다. 이로 인해 메서드를 호출 UnlockUser 하거나 디렉터리에 지정된 잠긴 기간이 지나갈 때까지 잠금 상태가 지워질 때까지 사용자가 잠기고 로그온할 수 없습니다.
질문 및 답변에 대한 업데이트가 성공하고 속성이 EnablePasswordReset 이 true
면 사용자의 잘못된 암호 응답 추적 카운터가 다시 설정됩니다.
암호 응답은 Active Directory 데이터 저장소에 EncryptPassword 저장되기 전에 메서드를 사용하여 암호화됩니다. 암호화 키 및 알고리즘은 machineKey 요소(ASP.NET 설정 스키마) 구성 요소에 의해 지정됩니다. machineKey 요소(ASP.NET 설정 스키마) 요소의 암호 해독 특성을 지정 ActiveDirectoryMembershipProvider 해야 합니다. 클래스는 자동 생성된 암호화 키를 지원하지 않습니다.
암호 질문의 최대 길이는 256자입니다. 암호 응답의 최대 길이는 128자입니다.
선행 및 후행 공백은 를 제외한 password
모든 매개 변수 값에서 잘립니다.
공급자는 연결 문자열에 지정된 검색 지점에서 시작하여 사용자 이름에 대한 하위 트리 검색을 수행하여 업데이트할 사용자 인스턴스를 찾습니다. 연결 문자열에 ActiveDirectoryMembershipProvider 대한 자세한 내용은 클래스 항목을 참조하세요.
적용 대상
추가 정보
.NET