HTTPS和接口安全一

210 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第21天,点击查看活动详情

1、HTTPS

HTTP协议传输的数据都是未加密的,HTTPS协议是由HTTP+SSL协议构建的可进行加密传输、身份认证的网络协议,要比HTTP协议安全。

1 .HTTPS和HTTP的区别****

(1)HTTPS协议需要到CA申请证书,一般免费证书较少,因而需要一定费用。

(2)HTTP是超文本传输协议,信息是明文传输,HTTPS则是具有安全性的SSL加密传输协议。

(3)HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

(4)HTTP的连接很简单,是无状态的;HTTPS协议是由HTTP+SSL协议构建的可进行加密传输、身份认证的网络协议,比HTTP协议安全。

注:在接口测试中HTTPS协议的接口和HTTP协议的接口请求方法一致。HTTPS协议对接口的性能有部分损耗。

2、接口安全

接口作为一项“公开”服务必然会涉及到接口的安全问题。一般接口都会采用一定的权限机制,来限定只能内部会部分人使用,常用的鉴权机制有Session/Cookie机制、Token机制等。

除了权限鉴定之外,对于一些包含敏感信息的接口数据(如订单数据),一般还会采用加密或数字签名的方式来防止请求被拦截和篡改。

2.1 鉴权机制

为验证用户身份,接口需要采用一定的鉴权机制,常见的接口鉴权机制有Cookie/Session机制,appid/Token机制,开放授权协议等。

(1)Session/Cookie机制:即需要登录,登录后可访问各个接口,最常用的一种策略,适用于内部接口。

(2)固定APPID模式/动态Token模式:用户注册时会生成一个唯一的appid,用户调用接口时需要携带appid,适用于公开接口,安全性较差。

Token即身份令牌,用户访问接口需要使用个人APPID临时申请一个Token,Token有一定有效期,适用于公开接口,安全性较APPID模式好。

(4)开放授权协议:标准的接口授权协议,如Basic Auth、Digit Auth、OAuth 2.0等,适用于开发者平台等开放数据接口。

(5)其他:如IP白名单机制等。