문제

나는 flask-login 도서관에서는 사용자가 이메일을 통해 비밀번호를 재설정할 수 있도록 허용하는 방법에 대한 좋은 튜토리얼이나 문서를 찾을 수 없었습니다.이를 수행하는 방법에 대해 어떤 방향/자원을 살펴볼 수 있습니까?철저한 Google 검색에서는 유용한 정보가 나오지 않았습니다.

도움이 되었습니까?

해결책

flask-login 비밀번호 재설정 이메일 및 기타 사항은 처리하지 않습니다.세션과 쿠키를 관리하는 데만 사용됩니다.

당신은 사용해야합니다 Flask-Security 플라스크에 비밀번호 재설정 기능과 기타 일반적인 보안 관련 기능을 추가합니다.Flask-Security는 Flask-login을 사용하여 세션을 처리하지만 보안 기능을 완성하기 위해 다른 기능을 추가합니다.

이메일 확인

원하는 경우 신규 사용자에게 이메일 주소 확인을 요구할 수 있습니다.Flask-Security는 확인 링크가있는 신규 사용자에게 이메일 메시지를 보냅니다.확인 링크를 탐색하면 사용자가 자동으로 로그인됩니다.사용자가 만료 된 토큰을 사용하거나 이전 이메일을 잃어버린 경우 주어진 이메일에 대한 확인 링크를 재현 할 수 있습니다.확인 링크는 지정된 시간 후에 만료되도록 구성 할 수 있습니다.

비밀번호 재설정/복구

비밀번호 재설정 및 회복은 사용자가 자신의 비밀번호를 잊어 버릴 때 사용할 수 있습니다.Flask-Security는 비밀번호를 재설정 할 수있는보기에 대한 링크를 통해 사용자에게 이메일을 보냅니다.비밀번호가 재설정되면 자동으로 로그인되어 새 비밀번호를 사용할 수 있습니다.비밀번호 재설정 링크는 지정된 시간 후에 만료되도록 구성 할 수 있습니다.

사용자 등록

Flask-Security는 기본 사용자 등록 보기와 함께 패키지로 제공됩니다.이보기는 매우 간단하며 새로운 사용자는 이메일 주소와 암호 만 제공하면됩니다.등록 프로세스에 더 많은 필드가 필요한 경우이보기가 과대 평가 될 수 있습니다.

다른 팁

기본 논리 :

  1. email 필드를 사용하여 암호를 생성합니다.
  2. 사용자가 양식을 제출할 때 다음을 수행해야합니다.
    1. 데이터베이스 에서이 이메일을 확인하십시오
    2. undstingishished crypto random 비밀 키 (다음 단지 비밀 키)
    3. 이 키, 현재 시간 소인 및 사용자 식별자를 캐시 또는 데이터베이스에 저장
    4. 사용자 이메일 또는 SMS
    5. 로 보내십시오.
    6. 사용자가 비밀 키를 적용 할 때 (예를 들어 URL 또는 특수 양식)해야합니다.
      1. 가증을 검증합니다 (Explier, Explired, Explired, 이전에 사용되지 않음)
      2. 사용자 식별자 가져 오기
      3. 현재 비밀 키
      4. 사용되는 삭제 또는 표시
      5. 새 암호를 입력 / 생성하는 논리를 제공합니다.
      6. 암호를 입력 / 생성하는 논리는 다를 수 있습니다 :

        1. 로그인 사용자 및 양식 표시 새 암호 입력 - 한 번 로그인 키
        2. 유효한
        3. 로그인보다 암호를 입력하려면 양식 표시
        4. 새 암호를 생성하고 사용자 이메일
        5. 로 보내십시오.
        6. 양식에 새 암호를 입력하고 사용자 이메일
        7. 에 보내는 양식을위한 새로운 비밀 키를 생성합니다.
        8. 양식을 승인하고, SMS를 통해 보내고, 양식을 보내 새로운 암호 및 승인 비밀 키를 입력 한 다음 유효한
        9. 에 로그인하십시오.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top