历史版本2 :HTTP 认证 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

FineDataLink 版本功能变更
4.0-

1.2 功能简介

FineDataLink 支持 HTTP 认证方式。本文介绍如何在 FineDataLink 中设置 HTTP 认证。

开启 HTTP 认证后,FineDataLink 会把用户输入的用户名和密码加密后再传送到 HTTP 认证服务器,HTTP 认证服务器根据用户自定义的认证逻辑进行认证,并将认证结果返回给 FineDataLink,如下图所示:

注:超级管理员不受 HTTP 认证的影响,依旧使用平台内置认证。

2. 通过 Node 实现认证编辑

2.1 下载认证文件

1)点击下载认证文件:http-authentication.zip

2)将下载后的压缩包解压到本地目录,例如E:\HTTP,如下图所示:

本节给出的认证文件中,HTTP 认证通过的逻辑为:用户名与密码相同,即可成功登录 FineDataLink 。

用户可在 auth.js 的if (content.username === content.password)处,根据实际需求修改该默认认证逻辑。如下图所示:

2.2 启动服务器

打开命令提示符,输入下面命令来启动服务器:

1)需要先安装 npm ,安装过程这里不再详细介绍。

2)进入到http-authentication\node路径下:

注:下面命令进入的是E:\HTTP\http-authentication\node路径,用户根据实际情况进入到解压文件存放的路径即可。

e:
cd E:\HTTP\http-authentication\node

3)安装依赖

npm install

4)生成 publickey 和 privatekey,生成的 key 会输出到 key.txt :

npm run key

5)启动服务器。 前两条命令只需在第一次初始化时需要,以后启动直接 npm start 即可:

npm start

认证地址为:http://0.0.0.0:3000/

2.3 获取公钥

服务器启动成功后,打开 Node 文件夹下的 key.txt,复制公钥,如下图所示:

2.4 开启 HTTP 认证

管理员进入 FineDataLink ,点击「管理系统>用户管理>全局设置」,选择「HTTP认证」,输入认证地址和公钥,点击「保存」。如下图所示:

注:Http 认证选项不需要密码一项,因此在手动添加用户或者同步数据集导入用户时,都没有密码一项。

2.5 效果查看

点击「保存」后,提示登录信息失效,重新登录 FineDataLink 。

在登录页输入 FineDataLink 「用户管理」中已经存在的用户名,并输入密码:

  • 若密码和用户名相同,则登录成功。

  • 若密码和用户名不相同,则登录失败。

3. 通过 Java 实现认证编辑

本节提供的两种 HTTP 认证方法中,认证通过的逻辑均为:用户名与密码相同,即可成功登录 FineDataLink 。

3.1 方法一:通过源码工程运行

3.1.1 下载认证文件

下载并解压文件:http-authentication-java.zip

3.1.2 运行工程

使用 IDEA 或 Eclipse 打开工程,然后运行 WebServerMain,出现服务器已启动,即成功启动服务器,如下图所示:

务器地址为:http://0.0.0.0:9090/

3.1.3 复制公钥

服务器启动成功后,打开编译目录(target)下的 key.txt,复制 publickey ,如下图所示:

注:如改变 key.txt,则运行 KeyGeneratorMain,打开编译目录(target)下的 key.txt,复制 publicKey 到 FineDataLink 中。

3.1.4 开启 HTTP 认证

管理员进入 FineDataLink ,点击「管理系统>用户管理>全局设置」,选择「HTTP认证」,输入认证地址和 3.1.3 节复制的公钥 publickey ,点击「保存」。如下图所示:

3.1.5 效果查看

点击「保存」后,提示登录信息失效,重新登录 FineDataLink 。

在登录页输入 FineDataLink 「用户管理」中已经存在的用户名,并输入密码:

  • 若密码和用户名相同,则登录成功。

  • 若密码和用户名不相同,则登录失败。

3.2 方法二:命令行运行

3.2.1 下载文件

1)点击下载 JAR 包:http-authentication-java.zip

2)将下载后的 JAR 文件使用 WinRAR 解压到某个文件夹,如下图所示:

注:解压后的文件所在路径不要有中文和空格。

3.2.2 运行文件

命令行进入解压文件所在路径,输入java WebServerMain启动服务器,如下图所示:

务器地址为:http://0.0.0.0:9090/

注:需确保本地有 Java 环境。

3.2.3 复制公钥

1)服务器启动成功后,打开解压文件路径下的 key.txt,复制 publickey ,如下图所示:

1600826506450973.png

3.2.4 开启 HTTP 认证

管理员进入 FineDataLink ,点击「管理系统>用户管理>全局设置」,选择「HTTP认证」,输入认证地址和 3.2.3 节复制的公钥 publickey ,点击「保存」。如下图所示:

3.2.5 效果查看

点击「保存」后,提示登录信息失效,重新登录 FineDataLink 。

在登录页输入 FineDataLink 「用户管理」中已经存在的用户名,并输入密码:

  • 若密码和用户名相同,则登录成功。

  • 若密码和用户名不相同,则登录失败。