java口令认证_基于口令和证书认证(TrueLicense)的接口调用工具库的封装设计 By 嗡汤圆...

安全性用户名、口令认证用户名、口令泄露,没有证书也无法完成认证用户名、口令与证书绑定,用户、证书与硬件MAC地址绑定。用户名、口令、证书均泄露后,若硬件MAC地址不在认证范围,则仍无法使用服务。用户名、口令、证书泄露,盗用者通过解密获取MAC地址并伪造后,服务端仍可以通过修改配置实时变更认证MAC地址,甚至使证书失效。需求&优点需求接口使用者无需知道接口地址和传输实现,仅需知道传入参数和传...
摘要由CSDN通过智能技术生成

安全性

用户名、口令认证

用户名、口令泄露,没有证书也无法完成认证

用户名、口令与证书绑定,用户、证书与硬件MAC地址绑定。

用户名、口令、证书均泄露后,若硬件MAC地址不在认证范围,则仍无法使用服务。

用户名、口令、证书泄露,盗用者通过解密获取MAC地址并伪造后,服务端仍可以通过修改配置实时变更认证MAC地址,甚至使证书失效。

需求&优点

需求

接口使用者无需知道接口地址和传输实现,仅需知道传入参数和传出传出数据的结构。

接口使用者必须拥有合法的用户名、口令以及证书。

接口使用者的项目中必须包含颁发给该使用者的证书,才能正常使用接口。

接口使用者通过口令和证书认证后获取到Token,然后通过Token调用其它功能接口。

优点

对接口使用者隐藏了接口的真实地址和实际调用传参规范。

使用证书认证,即使用户名和口令泄露,无证书的用户仍然无法使用接口功能。

证书可以限制接口使用者的使用权限有效时间。一旦证书过期,使用者将无法使用接口。

证书可以包含加密的额外认证信息,比如设备MAC地址认证信息等,这样即使证书和口令一起泄露,使用者仍然无法使用未经认证的机器来调用接口。服务端也可及时修改配置使泄露的证书失效。

使用者用法说明

对于使用者的个人项目而言,仅需引入接口调用工具库(假设为:dev-tool.jar)后即可使用。假设工具库中约定了如下元素:

1. 接口调用类HttpsClient。

2. 接口地址字典Endpoints。

2. 接口返回通用结构RespResult。

3. 错误码字典ResultState。

那么,用户仅需知道接口的名称即可通过类似如下的代码获取接口信息:

HashMapparamMap = new HashMap();

paramMap.put("paramName", "paramVale");

try {

RespResult res = HttpsClient.invoke(Endpoints.get("interfaceName"), paramMap);

if(res.statusId == ResultState.SUCCESS)

Object actualData = res.getData();

else

logger.error("interface return error:"+res.errMsg);

} catch (Exception e){

logger.error("httpsclient error:"+e)

}

1

2

3

4

5

6

7

8

9

10

11

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值