什么是接口
从别人的网站或服务器上获取服务或信息,对方不会提供数据库共享,只能提供一个写好的方法来获取数据,如云客服平台和钉钉之间,云客服平台可以通过调用钉钉接口实现由云客服平台发起通知触达钉钉内部的员工,这个过程中钉钉不会提供自己的数据库给云客服平台,只会提供一个接口,供其进行调用。
如何保证接口的安全性
鉴权接口:服务器开放出接口后需要保证只允许有权限的客户端系统能够调用此接口,为了实现对调用接口服务器的身份验证,增加系统级别鉴权操作。客户端系统在访问服务器业务接口前需要经过鉴权接口获取权限令牌,客户端系统在访问业务接口时需要附带令牌(token)作为身份验证。此处需要注意,为了削减令牌泄露带来的危害,需要对令牌设置过期时间。丢失后重新查询令牌业务。
获取token
IP白名单:
客户端系统在访问服务时会携带系统IP供服务器进行通讯,服务器可根据接口携带IP 进行限制,可以要求拥有特定IP的客户端系统才能调用接口。
回调地址:
之前所讲的接口都是客户端系统调用服务器端接口,可是如果服务器端想向客户端发起一些请求(如客户端系统调用服务器创建一个客户,服务器端这个客户后来被删除后需要告知客户端系统),这时需要提供一个标准化的回调地址。