Commit f4b37b33 authored by 张伯涛's avatar 张伯涛

登录加密解密同步91后端

parent 9154f401
import request from '@/utils/request' import request from '@/utils/request'
import { encrypt } from '@/utils/jsencrypt'
import Qs from 'qs'
// 登录方法 // 登录方法
export function login(username, password, code, uuid) { export function login(username, password, code, uuid) {
const data = { const data = {
username, username,
password password,
// code, code,
// uuid uuid
} }
console.log('加密前数据', data)
return request({ return request({
url: '/auth/login', url: '/auth/login',
method: 'post', method: 'post',
params: data, data: Qs.stringify({
headers: { sign: encrypt(data)
'Content-Type': 'application/x-www-form-urlencoded' }),
} headers: {}
}) })
} }
// 刷新token // 刷新token
......
...@@ -39,10 +39,10 @@ const user = { ...@@ -39,10 +39,10 @@ const user = {
Login({ commit }, userInfo) { Login({ commit }, userInfo) {
const username = userInfo.username.trim() const username = userInfo.username.trim()
const password = userInfo.password const password = userInfo.password
// const code = userInfo.code const code = userInfo.code
// const uuid = userInfo.uuid const uuid = userInfo.uuid
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
login(username, password).then(res => { login(username, password, code, uuid).then(res => {
setToken(res.data) setToken(res.data)
commit('SET_TOKEN', res.data) commit('SET_TOKEN', res.data)
resolve() resolve()
......
...@@ -2,10 +2,31 @@ import JSEncrypt from 'jsencrypt/bin/jsencrypt' ...@@ -2,10 +2,31 @@ import JSEncrypt from 'jsencrypt/bin/jsencrypt'
// 密钥对生成 http://web.chacuo.net/netrsakeypair // 密钥对生成 http://web.chacuo.net/netrsakeypair
const publicKey = 'MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBANL378k3RiZHWx5AfJqdH9xRNBmD9wGD\n' + const publicKey = 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu6EsPHTuCzwyZ7D0/OhW\n' +
'QDQdB9tByC0vDnb7k7gmT0h77/mmJYcwvuqUdj+PXKO+V1NlJJqlf61UjcQkWD9o\n' +
'K6M1MHLHlS1qWXeXGaETClNUXAhdw2IkdBouXSHxyDkXYIDINYlOd91chxEBuBac\n' +
'igJI0c5p9BA62QcOKDUE2mDJL+LOd70NCYsJf3um1IAgfKDX8RH2H3aPxy/BJ8aS\n' +
'Edu+M9YDWsF6VFpaBr/WPPdouuPPjfs5203PCbvp0pvco+05JNDSiurEFcL+VDMm\n' +
'wFNKExmeCvn/zr+UIkRPWHwxfJq+/gw/lt+UzBO2NURhCv4pQZy19vdFLLLeMM09\n' +
'ewIDAQAB'
export function encrypt(data) {
const json = JSON.stringify(data)
const encryptor = new JSEncrypt()
encryptor.setPublicKey(publicKey)
return encryptor.encrypt(json)
}
export function decrypt(txt) {
const encryptor = new JSEncrypt()
encryptor.setPrivateKey('')
return encryptor.decrypt(txt)
}
const passwordPublicKey = 'MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBANL378k3RiZHWx5AfJqdH9xRNBmD9wGD\n' +
'2iRe41HdTNF8RUhNnHit5NpMNtGL0NPTSSpPjjI1kJfVorRvaQerUgkCAwEAAQ==' '2iRe41HdTNF8RUhNnHit5NpMNtGL0NPTSSpPjjI1kJfVorRvaQerUgkCAwEAAQ=='
const privateKey = 'MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEA0vfvyTdGJkdbHkB8\n' + const passwordPrivateKey = 'MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEA0vfvyTdGJkdbHkB8\n' +
'mp0f3FE0GYP3AYPaJF7jUd1M0XxFSE2ceK3k2kw20YvQ09NJKk+OMjWQl9WitG9p\n' + 'mp0f3FE0GYP3AYPaJF7jUd1M0XxFSE2ceK3k2kw20YvQ09NJKk+OMjWQl9WitG9p\n' +
'B6tSCQIDAQABAkA2SimBrWC2/wvauBuYqjCFwLvYiRYqZKThUS3MZlebXJiLB+Ue\n' + 'B6tSCQIDAQABAkA2SimBrWC2/wvauBuYqjCFwLvYiRYqZKThUS3MZlebXJiLB+Ue\n' +
'/gUifAAKIg1avttUZsHBHrop4qfJCwAI0+YRAiEA+W3NK/RaXtnRqmoUUkb59zsZ\n' + '/gUifAAKIg1avttUZsHBHrop4qfJCwAI0+YRAiEA+W3NK/RaXtnRqmoUUkb59zsZ\n' +
...@@ -15,16 +36,16 @@ const privateKey = 'MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEA0vfvyTdGJkdb ...@@ -15,16 +36,16 @@ const privateKey = 'MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEA0vfvyTdGJkdb
'tTbklZkD2A==' 'tTbklZkD2A=='
// 加密 // 加密
export function encrypt(txt) { export function passwordEncrypt(txt) {
const encryptor = new JSEncrypt() const encryptor = new JSEncrypt()
encryptor.setPublicKey(publicKey) // 设置公钥 encryptor.setPublicKey(passwordPublicKey) // 设置公钥
return encryptor.encrypt(txt) // 对需要加密的数据进行加密 return encryptor.encrypt(txt) // 对需要加密的数据进行加密
} }
// 解密 // 解密
export function decrypt(txt) { export function passwordDecrypt(txt) {
const encryptor = new JSEncrypt() const encryptor = new JSEncrypt()
encryptor.setPrivateKey(privateKey) encryptor.setPrivateKey(passwordPrivateKey)
return encryptor.decrypt(txt) return encryptor.decrypt(txt)
} }
...@@ -69,7 +69,7 @@ ...@@ -69,7 +69,7 @@
// import { getCodeImg } from '@/api/login' // import { getCodeImg } from '@/api/login'
import HomeSearch from '@/views/homePage/components/searchHome/index' import HomeSearch from '@/views/homePage/components/searchHome/index'
import Cookies from 'js-cookie' import Cookies from 'js-cookie'
import { encrypt, decrypt } from '@/utils/jsencrypt' import { passwordEncrypt, passwordDecrypt } from '@/utils/jsencrypt'
export default { export default {
name: 'Login', name: 'Login',
...@@ -123,7 +123,7 @@ export default { ...@@ -123,7 +123,7 @@ export default {
const rememberMe = Cookies.get('rememberMe') const rememberMe = Cookies.get('rememberMe')
this.loginForm = { this.loginForm = {
username: username === undefined ? this.loginForm.username : username, username: username === undefined ? this.loginForm.username : username,
password: password === undefined ? this.loginForm.password : decrypt(password), password: password === undefined ? this.loginForm.password : passwordDecrypt(password),
rememberMe: rememberMe === undefined ? false : Boolean(rememberMe) rememberMe: rememberMe === undefined ? false : Boolean(rememberMe)
} }
}, },
...@@ -133,7 +133,7 @@ export default { ...@@ -133,7 +133,7 @@ export default {
this.loading = true this.loading = true
if (this.loginForm.rememberMe) { if (this.loginForm.rememberMe) {
Cookies.set('username', this.loginForm.username, { expires: 30 }) Cookies.set('username', this.loginForm.username, { expires: 30 })
Cookies.set('password', encrypt(this.loginForm.password), { expires: 30 }) Cookies.set('password', passwordEncrypt(this.loginForm.password), { expires: 30 })
Cookies.set('rememberMe', this.loginForm.rememberMe, { expires: 30 }) Cookies.set('rememberMe', this.loginForm.rememberMe, { expires: 30 })
} else { } else {
Cookies.remove('username') Cookies.remove('username')
......
...@@ -53,7 +53,7 @@ module.exports = { ...@@ -53,7 +53,7 @@ module.exports = {
[process.env.VUE_APP_BASE_API]: { [process.env.VUE_APP_BASE_API]: {
// target: `http://192.168.1.17:10010/internal`, // target: `http://192.168.1.17:10010/internal`,
// target: `http://10.5.87.231:10010/internal`, // target: `http://10.5.87.231:10010/internal`,
target: `http://124.71.16.228:8096/`, target: `http://192.168.1.46:8090/`,
changeOrigin: true, changeOrigin: true,
pathRewrite: { pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: '' ['^' + process.env.VUE_APP_BASE_API]: ''
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment