From 9707e3f2b23cacaa6d219f7a000865cda4ecb99c Mon Sep 17 00:00:00 2001
From: wangzhibo <wangzhibo@shsening.com>
Date: 星期五, 17 十二月 2021 16:46:53 +0800
Subject: [PATCH] Merge branch 'master' of http://www.shsening.com:10000/r/template/shanghai

---
 js/index.js |   28 ++++++++++++++++++++++++++++
 1 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/js/index.js b/js/index.js
index 1b60270..0403a83 100644
--- a/js/index.js
+++ b/js/index.js
@@ -18,6 +18,34 @@
     request = $.extend(request, haoutil.system.getRequest(window.top));
   }
 
+  try {
+    var jwtstr = request.JWT;
+    var strs_ = jwtstr.split('.');
+    var jwt_header_ = new buffer.Buffer(strs_[0].toString('base64'), 'base64').toString();
+    var jwt_payload_ = new buffer.Buffer(strs_[1].toString('base64'), 'base64').toString();
+    var hash = CryptoJS.HmacSHA256(strs_[0] + '.' + strs_[1], "sxyd");
+    var hashInBase64 = CryptoJS.enc.Base64.stringify(hash);
+    var reg = RegExp(strs_[2]);
+    if (!reg.exec(hashInBase64)) {
+      // verification failed, go back
+      window.top.location = mars3d.global_variables.un_authorization_url;
+    }
+    payload_ = JSON.parse(jwt_payload_);
+    if (!payload_ || !payload_.expires) {
+      // verification error ,go back 
+      window.top.location = mars3d.global_variables.un_authorization_url;
+    }
+    var date1 = new Date(payload_.expires);
+    var date2 = new Date();
+    if (date1 < date2) {
+      // expire, go back
+      window.top.location = mars3d.global_variables.un_authorization_url;
+    }
+  }
+  catch (err) {
+    window.top.location = mars3d.global_variables.un_authorization_url;
+  }
+
   mars3d.global_variables.userid = request?.userid || 2;
 
   var configfile = "config/config.json"; //榛樿鍦板潃

--
Gitblit v1.9.1