授权管理器安装

授权分为两个部分,本教程需要安装授权管理器(客户端),用于对其他程序进行授权管理。授权管理器服务端用于生成序列号,供授权管理器的客户端同步到本地使用。服务端地址:https://auth.sexbao.net

授权管理器有两个功能,一个功能是对微服务体系的系统进行授权管理,授权安装框架名称来的,比如hardmall的框架名称是同一个, 所以只需要一个授权信息,所有的体系内系统均可使用,不用一套系统申请一个授权。另外一个功能是存储和管理所有 系统申请的ID主键,包括数据的所有权,系统来源等等,方便用户查看系统数据的作者和产生日期,方便回溯数据来源。

授权管理器,目前有三个版本,下载最新版本使用即可。

docker pull weijuncug/authserver:1.0.5

有如下环境变量:

版本编号说明备注
AUTH_USERNAME企业名称联网授权企业名称(可不填)
AUTH_PASSWORD授权序列号联网授权序列号(可不填)
MICRO_REGISTRY注册中间件类型consul
MICRO_REGISTRY_ADDRESS注册地址consul
MICRO_TRANSPORT传输协议http

部署命令:(序列号参照下一章 #联网授权)

docker run \
--network effect-manager \
--network-alias authserver \
--name authserver \
-e MICRO_REGISTRY=consul \
-e MICRO_REGISTRY_ADDRESS=consul:8500 \
-p 12981:12981 \
-d weijuncug/authserver:1.0.5

授权在线申请

需要预先进行申请,申请网址:晒宝科技授权服务中心

首先使用邮箱进行注册,注册完毕后,增加企业名称,然后为增加的企业名称申请对应的授权。(授权系统选择 HardMall)

申请完毕后,在授权列表里面就可以看到序列号。如果序列号是未使用状态,那么就可以用该序列进行联网授权。

如何使用授权服务中心申请系统序列号

许多小伙伴来咨询如何申请序列号用于测试,所以这两天快马加鞭开发了一套授权服务中心,用于小伙伴们申请序列号。大体上分为以下五步骤:

一、注册

没有账号,首先使用邮箱进行注册, 注册的时候需要收取验证码,目前邮件采用个人邮箱发送,如果一天超过50封,就发不出去了,所以每天只有50名限额。

注册页面

二、登录

输入邮箱和密码进行登录。

登录页面

三、添加企业

登录后,需要添加企业名称,一个用户可以添加多个企业,企业名称可以是项目名称,也可以是事业部名称,方便管理。

添加企业

四、授权申请

授权申请

五、授权列表

登录页面

以上五步就申请了所需的名称和序列号,接下来把【授权公司】和【序列号】应用到授权管理器中。

应用秘钥(页面方式)

应用秘钥通过页面方式和命令行方式执行一次即可,不用多次执行。

首先登录授权管理器客户端,地址:

http://server-ip:12981

如下图所示,系统启动后自动注册了默认用户,用户名 admin,密码 laymer110,如果是安全网络,直接登录即可,如果是非安全网络,建议重新注册用户,将秘钥同步到新注册的安全账户下面。

授权管理器-客户端登录

登陆成功后,显示已经授权的所有系统,这些系统授权是从授权服务端同步来的。其中框架名称simple指的就是hardmall程序,使用了simple框架。

授权管理器-客户端秘钥列表

点击上图中的【系统授权】,打开同步秘钥的页面,填写在服务端申请的秘钥,点击同步,完成后回到列表页面,即可显示刚才同步的系统授权。

同步授权

应用秘钥(命令行方式)

进入docker管理器

docker exec -it  authserver bash

查看用户,如果没有可以新建默认用户admin/laymer110

./AppAuthServer users

新建用户(如果是非安全网络环境,请勿使用默认密码)

./AppAuthServer useradd --name=admin --passwd=laymer110 

通过环境变量的方式设置企业名称和序列号:

export AUTH_USERNAME=<授权公司>
export AUTH_PASSWORD=<序列号>

联网授权

拿到授权后就可以同步授权秘钥了。方法如下:

# 进入docker环境
docker exec -it authserver bash

# 查看是否存在用户,如果没有请新建用户:(hardmall主程序也是,如果不是安全网络环境,可以自定义密码)
./AppAuthServer useradd --name=admin --passwd=laymer110

# 执行同步命令(如果失败,请多次尝试,网络不好)
./AppAuthServer sync --name=admin --passwd=laymer110

# 检查授权信息
./AppAuthServer auth-list --name=admin --passwd=laymer110