[tag] [Django] Как восстановить сохраненный пароль в формате raw - PullRequest
0 голосов
/ 21 октября 2019

В одном из моих представлений мне нужны данные о имени пользователя и пароле в необработанном формате, но Django использует алгоритм PBKDF2 для хранения пароля.

Я хотел бы знать, как получить сохраненный пароль из формы аутентификации.

Используя эти данные об имени пользователя и пароле из моего приложения Django, мне нужно использовать те же учетные данные для доступа к другому веб-сайту для выполнения веб-автоматизации на нем с помощью веб-драйвера selenium chrome.

Пожалуйста, дайте нам знать, как получитьпароль в необработанном формате после аутентификации пользователя с использованием ниже LoginForm и login_view.

forms.py:

класс LoginForm (AuthenticationForm):

remember_me = forms.BooleanField(required=True, initial=False)

def __init__(self, *args, **kwargs): 

    super(LoginForm, self).__init__(*args, **kwargs)
    self.helper = FormHelper()
    self.helper.form_action = '.'
    self.helper.layout = Layout(
        Field('username', placeholder="Enter Username", autofocus=""),
        Field('password', placeholder="Enter Password"),
        Field('remember_me'),
        Submit('sign_in', 'Log in',
               css_class="btn btn-lg btn-primary btn-block"),
    )

def apply_gsp_request_form (request,id = None):

if id:
    action = 'edit'
    model = get_object_or_404(ApplyGSP, pk=id)
else:
    action = 'submit'
    model = ApplyGSP()

message = ""

if request.method == 'POST':
    form = ApplyGSPForm(request.POST, instance=model)

    if form.is_valid():
        form.save()
        username = request.user.username
        print("password:", request.user.password)
        # How to get password details ? If i get pwd here using request.user.password it is displaying in <SHAalgorithm>$<iterations>$<salt>$<hash> format.
  # but i need in raw(clear text format)
    applyselenium(username,password)    

def applyselenium ():



My Views.py:

views.py:

def login_view (запрос): выход из системы (запрос)

username = password = ''
redirect_to = request.GET.get('next', '/gspapp/')

form = LoginForm()

if request.POST:

    form = LoginForm(request.POST)

    username = request.POST['username']
    password = request.POST['password']

    user = authenticate(request, username=username, password=password)    

    if user is not None:
        login(request, user)

        remember_me = request.POST.get('remember_me', False)

        if remember_me == "on":
            ONE_MONTH = 30 * 24 * 60 * 60
            expiry = getattr(settings, "KEEP_LOGGED_DURATION", ONE_MONTH)
            request.session.set_expiry(expiry)
        else:
            request.session.set_expiry(0)

        return HttpResponseRedirect(redirect_to)

context = {'form': form, 'page_title': page_title, 'loginpage_heading': loginpage_heading}
return render(request, 'login.html', context)

С уважением Н.Дилип Кумар.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...