.net 5.0 API权限控制和数据防篡改(附源码实例)

1、客户端登入获取当前登入帐号信息

1.1、客户端发送帐号和密码到他们端

假设  用户ID:lqwvje  密码:123456

1.2、服务端响应客户端

服务端对客户端发送的帐号、密码、权限校验,如果都通过即返回用户信息( 用户ID:lqwvje 密码:123456 密钥:e10adc3949ba59abbe56e057f20f883e 权限:3),否则返回失败消息.

2、客户端通过API与服务端数据交互

2.1、客户端发起获取服务端数据请求

发送参数有:用户ID、参数1、参数2、数据签名(签名由  用户ID+参数1+参数2+用户密钥 组合生成的一个MD5值),注意:密钥不发送服务端,只参与MD5计算,假设:用户ID:lqwvje  参数1:测试数据1 参数2:测试数据2  密钥:e10adc3949ba59abbe56e057f20f883e   生成的签名为 cde52443d3e6c4c224baaf64cf904e91

2.2、服务端响应客户端

服务端对客户端发送的数据进行校验,

1、签名校验  用户ID+参数1+参数2+用户密钥  生成的MD5值与客户端发送的签名是否一致,(用户密钥不是客户端发送过来的,服务端存有客户信息)

2、权限校验

签名和权限校验都通过之后,服务端返回 客户端需要的数据和签名(  用户ID+返回的数据+用户密钥  生成一个MD5值)

3、权限控制

每个用户都有一个 int类型字段,一个int类型有32个Bit,每个Bit代表一个接口的权限,0、无权限 1、有权限。

源码下载链接: https://pan.baidu.com/s/17GGUkINToaLraoz89KhtJw 提取码: k7pf

视频讲解地址 https://www.bilibili.com/video/BV1cq4y157jz