反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

上次登录信息提示

  • 文档创建者:susie
  • 历史版本:9
  • 最近更新:Carly 于 2022-01-14
  • 1. 概述

    1.1 版本

    报表服务器版本
    10.0

    1.2 功能简介

    为安全起见,在数据决策系统的「登录」Tab 页下,开启「上次登录信息提示」,开启后每次登录时会提示上一次登录的时间、IP 地址、地点,这样会及时发现登录异常等信息。

    2. 操作步骤

    2.1 开启上次登录信息提示按钮

    管理员登录数据决策系统,点击「管理系统>系统管理>登录」,开启「上次登录信息提示」按钮,如下图所示:

    2.2 效果查看

    2.2.1 PC 端

    那么每次登录数据决策系统时,将提示上次登录信息,如下图所示:

    3.png

    2.2.2 移动端

    以 App 效果为例,如下图所示:

    01.jpg

    3. 自定义登录页实现上次登录信息提示功能

    登录信息的获取是在登录页获取的。

    注:使用addLoginInfo(function ())保存登录信息。

    3.1 主要代码

    1)获取当前客户端 IP 和城市信息:

     // 获取当前客户端ip和城市信息,可以自行更换来源
        function getIpInfo(cb) {
          $.ajax({
            url: "https://cloud.fanruan.com/api/query/ip?timeout=10000",
            async: true,
            dataType: "JSONP",
          }).done(function (data) {
            cb(data);
          });
        }

    2) 添加登录信息:

    function addLoginInfo(cb) {
          getIpInfo(function (ipInfo) {
            var info = {
              time: BI.print(BI.getDate(), "%Y-%X-%d %H:%M:%S"), // 登录时间,yyyy-MM-dd HH:mm:ss
              ip: ipInfo.ip || "",
              city: ipInfo.provincecity || "",
            };
            $.ajax({
              url: "/webroot/decision/login/info",
              contentType: "application/json",
              type: "POST",
              dataType: "json",
              headers: {
                Authorization: "Bearer " + BI.Cache.getCookie("fine_auth_token"),
              },
              data: JSON.stringify(info),
              success: function (res) {
                cb();
              },
              error: function () {
                alert("超时或服务器其他错误");
              }
            });
          })
        }

    3.2 示例

    参考 自定义登录界面 设置自定义登录页,HTML 文件为:test.html

    若需要在自定义登录页中添加获取上次登录信息提示的功能,代码修改为:login.html

    注:示例使用了内置的 FineUI,如果不使用 FineUI 可以直接使用 jQuery 或者原生实现 Ajax 请求,自行实现添加和获取 Cookie 的方法,自行处理当前时间。

    4. 注意事项

    4.1 上次登录信息显示不准确

    问题描述:

    登录数据决策系统时,上次登录信息中信息不准确。

    原因分析:

    登录信息的获取是在登录页获取的,若用户跳过 登录页 直接进入数据决策系统,本次的登录信息将不会记入上次登录信息。

    例如:在登录页勾选保持登录状态,进入数据决策系统(已开启上次登录信息提示按钮),上次登录信息显示为时间 1 ,彻底关闭浏览器;不经过登录页,再次进入数据决策系统,此时登录时间为时间 2 ,但上次登录信息仍然为时间 1 。

    4.2 不显示上次登录信息

    问题描述:

    开启了「上次登录信息提示」按钮,但是登录时不显示上次登录信息。

    原因分析:

    登录信息中的IP和城市,是通过帆软云中心https://cloud.fanruan.com/api/query/ip?timeout=10000获取的。

    若服务器无法连通该地址,将无法成功获取上次登录信息。但是对日志记录没有影响。

    附件列表


    主题: 数据决策系统
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526