系统鉴权简述

本文介绍了系统鉴权的概念,包括服务端用户鉴权和网络鉴权,并详细阐述了token鉴权流程和特性。此外,还探讨了sign签名鉴权的分类、特性以及可逆和不可逆签名的鉴权流程,为理解和实施系统鉴权提供了全面的指导。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、什么是系统鉴权

指验证用户是否拥有访问系统的权利。

鉴权分两方面:

服务端用户鉴权,从业务数据层面对客户端进行鉴权

网络鉴权,从网络层面对客户端进行鉴权

二、有哪些系统鉴权

1、session-cookie

2、token(auth)  

3、OAuth(开放授权)

4、sign(签名鉴权)

三、token鉴权流程

1、客户端使用用户名和密码请求登录

2、服务端收到请求,验证登录是否成功

3、验证成功后,服务端会返回一个Token给客户端,反之,返回身份验证失败的信息

4、客户端收到Token后把Token用一种方式存储起来

5、客户端每次发起请求时都会将Token发给服务端

6、服务端收到请求后,验证Token的合法性,合法就返回客户端所需数据,反之,返回验证失败的信息

四、token鉴权特性

1、随机性:每次的token都是不一样的(也可以一样,根据算法确认)

2、不可预测性:没有规律,无法预测

3、时效性: 可以设置token的有效时间

4、可扩展性:只是一个model,扩展起来非常方便

五、sign签名分类

1、可逆签名 对称算法,公钥私钥(公钥加密,私钥解密) AES,DES

2、不可逆签名 不可逆算法,密钥一致 RSA的MD5

六、sign签名鉴权的特性

1、一次性的身份校验方式,常见于不同项目间的api通信

2、一般形式是通过 AppID/AccessKey/AppSecret 及签名算法针对通信数据生成签名

3、AccessKey作为公钥,AppSecret作为私钥,AppSecret不能放在网络上传输

4、接口数据推送时,会随带上AppID、AccessKey、Timestamp 及 Signature

5、在服务端同样留存着一份相同的 AppID/AccessKey/AppSecret 配置

6、服务端接受到请求后通过AppID对应出匹配的AppSecret,结合相同的签名算法计算签名,并与请求附带的签名做校验

7、时间戳可以防止恶意用户截取到签名后进行伪装请求,使签名只在一定时间范围内有效,过期后不能再请求

8、由于每次请求的数据包不同,签名结果不同,防止数据被篡改

七、可逆签名鉴权的流程

1、乙方将数据按固定规则连接成字符串

2、乙方使用公钥对字符串加密和appId一起传递给甲方

3、甲方根据乙方传递的appId获取对应的私钥

4、甲方根据密钥解密乙方传递的加密信息

5、甲方根据固定规则将解密后的字符串反序列化

八、不可逆签名鉴权流程

1、乙方将数据按固定规则连接成字符串

2、乙方使用密钥对字符串加密

3、乙方将加密后的信息作为一个字段并和appId及解密前的信息全部传给甲方

3、甲方根据乙方传递的appId获取对应的密钥

4、甲方先单独摘出加密字段,然后对其他信息使用密钥加密

5、将加密得到的字段和摘出的比较是否相等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值