From 394153940810532d939098c3a1492e3203d8b8f3 Mon Sep 17 00:00:00 2001
From: peijianbo <peijainbo3006@163.com>
Date: Wed, 16 Sep 2020 16:42:04 +0800
Subject: [PATCH] =?UTF-8?q?fix(authentication):=E4=BF=AE=E5=A4=8D=E5=BC=80?=
 =?UTF-8?q?=E5=90=AF=E4=BA=8C=E6=AC=A1=E8=AE=A4=E8=AF=81=E6=97=B6=EF=BC=8C?=
 =?UTF-8?q?=E5=9C=B0=E5=9D=80=E8=B7=B3=E8=BD=AC=E5=87=BA=E9=94=99=E9=97=AE?=
 =?UTF-8?q?=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../templates/authentication/login.html       | 32 ++++++-------------
 .../templates/authentication/xpack_login.html | 32 ++++++-------------
 2 files changed, 18 insertions(+), 46 deletions(-)

diff --git a/apps/authentication/templates/authentication/login.html b/apps/authentication/templates/authentication/login.html
index 1f9a2cb51..bf0afa30b 100644
--- a/apps/authentication/templates/authentication/login.html
+++ b/apps/authentication/templates/authentication/login.html
@@ -26,7 +26,8 @@
             {% endif %}
         </div>
         <div class="form-group">
-            <input type="password" class="form-control" id="password" name="{{ form.password.html_name }}" placeholder="{% trans 'Password' %}" required="">
+            <input type="password" class="form-control" id="password" placeholder="{% trans 'Password' %}" required="">
+            <input id="password-hidden" type="text" style="display:none" name="{{ form.password.html_name }}">
             {% if form.errors.password %}
                 <div class="help-block field-error">
                     <p class="red-fonts">{{ form.errors.password.as_text }}</p>
@@ -82,27 +83,12 @@
         return jsencrypt.encrypt(password); //加密
     }
     function doLogin() {
-        var rsaPublicKey = "{{ rsa_public_key }}";
-        var password =$('#password').val();
-        var passwordEncrypted = encryptLoginPassword(password, rsaPublicKey);
-        var serialize_array = $('#form').serializeArray();
-        $.each(serialize_array, function(index,obj){
-            if(obj.name=='password'){
-                obj.value=passwordEncrypted};
-        });
-
-        $.ajax({
-            type: 'POST',
-            url: '',
-            data: serialize_array,
-            success: function(data){
-                $('body').html(data);
-            },
-            error: function(data){
-                alert('服务器异常');
-            },
-        });
-    };
-
+        //公钥加密
+        var rsaPublicKey = "{{ rsa_public_key }}"
+        var password =$('#password').val(); //明文密码
+        var passwordEncrypted = encryptLoginPassword(password, rsaPublicKey)
+        $('#password-hidden').val(passwordEncrypted); //返回给密码输入input
+        $('#form').submit();//post提交
+    }
     </script>
 {% endblock %}
diff --git a/apps/authentication/templates/authentication/xpack_login.html b/apps/authentication/templates/authentication/xpack_login.html
index 16fccb71d..a7a3773fc 100644
--- a/apps/authentication/templates/authentication/xpack_login.html
+++ b/apps/authentication/templates/authentication/xpack_login.html
@@ -106,7 +106,8 @@
                                         {% endif %}
                                     </div>
                                     <div class="form-group">
-                                        <input type="password" class="form-control" id="password" name="{{ form.password.html_name }}" placeholder="{% trans 'Password' %}" required="">
+                                        <input type="password" class="form-control" id="password" placeholder="{% trans 'Password' %}" required="">
+                                        <input id="password-hidden" type="text" style="display:none" name="{{ form.password.html_name }}">
                                         {% if form.errors.password %}
                                             <div class="help-block field-error">
                                                 <p class="red-fonts">{{ form.errors.password.as_text }}</p>
@@ -153,28 +154,13 @@
         return jsencrypt.encrypt(password); //加密
     }
     function doLogin() {
-        var rsaPublicKey = "{{ rsa_public_key }}";
-        var password =$('#password').val();
-        var passwordEncrypted = encryptLoginPassword(password, rsaPublicKey);
-        var serialize_array = $('#contact-form').serializeArray();
-        $.each(serialize_array, function(index,obj){
-            if(obj.name=='password'){
-                obj.value=passwordEncrypted};
-        });
-
-        $.ajax({
-            type: 'POST',
-            url: '',
-            data: serialize_array,
-            success: function(data){
-                $('body').html(data);
-            },
-            error: function(data){
-                alert('服务器异常');
-            },
-        });
-    };
-
+        //公钥加密
+        var rsaPublicKey = "{{ rsa_public_key }}"
+        var password =$('#password').val(); //明文密码
+        var passwordEncrypted = encryptLoginPassword(password, rsaPublicKey)
+        $('#password-hidden').val(passwordEncrypted); //返回给密码输入input
+        $('#contact-form').submit();//post提交
+    }
 </script>
 </html>