确保数据和API安全的5种方法
时间: 2020-02-15来源: mulesoft
2018年,据报道有6500起数据泄露事件,暴露了数十亿条潜在的数据滥用记录。在当今的数字互联的世界里,安全几乎总是企业的首要任务,以确保他们的记录是安全的。对于组织来说,实现API安全更佳实践以使它们的集成在系统之间传输的数据处于严格的锁定状态是非常重要的。
许多企业和技术提供商通过身份和访问权限管理来确保数据和API的安全。这是确保只有授权用户才能访问某些数据集,系统,API等的过程。
消息完整性与访问管理一样重要。消息完整性是指消息被确认是从“已知”应用程序发送的,并且在传输到API的过程中没有被破坏。这保证了消息的私有细节不会被看到。
1.多因素身份验证。
访问管理的一种类型是多因素身份验证。多因素身份验证是指应用程序在对用户的凭据进行了身份验证之后,向用户请求一次性使用令牌。此方法可以弥补仅用用户名和密码作为凭据的弱点。
有些应用程序可以通过向用户发送消息或让用户创建应用程序可以验证的数字密钥来实现这一点。只有在应用程序以两种或多种方式验证用户之后,用户才能访问它。
2.基于令牌。
保护应用程序和数据访问的另一种方法是通过基于令牌的凭据。用户首次使用其用户名/密码凭据访问身份提供者时,会发出令牌。从那时起,该应用程序只需要发送令牌,而不是让用户通过网络共享他们的凭据(这可能带来安全风险)。
大多数令牌都有一个有效期,可以吊销。因为令牌是唯一地发布给每个应用程序的,所以即使某个应用程序的令牌被吊销或过期,也可以单独访问所有应用程序。
3.数字签名。
确保消息完整性的一种方法是使用数字签名。你可以在任何东西上签名——无论是民事的、法律的还是个人的——签名都用来记录交易的真实性。这个概念也已经数字化。
在这种情况下,应用程序会使用算法和密码创建签名。该API使用相同的算法和新的密码来生成自己的签名,并将其与传入的签名进行比较。当接收到匹配的消息时,API将验证消息是由一个已知的应用程序发送的,并在传输过程中保持其完整性。这是因为只有一个已知的应用程序才会生成相同的签名并维护该签名——这与第三方篡改签名不同。
4.公开密匙加密
另一种确保消息完整性的古老方法是加密。公开密匙加密是一种对消息进行加密的方法,如果没有相应的密钥,则几乎无法解码该消息。
加密有两种形式:对称和非对称。对称是指客户端和服务器共享相同的密钥来加密和解密消息。非对称是指服务器向客户机发出一个公钥,允许它对消息进行加密,但保留一个可以解密消息的私钥。本质上是用一个密钥来锁定消息,用另一个密钥来解锁它。
5.数字证书。
数字证书是一种促进客户端和服务器之间通过网络进行安全传输级通信的方式,以便服务器可以向客户端进行身份验证。发生这种情况是因为证书将有关服务器的信息与有关拥有服务器的企业的信息绑定在一起。证书由客户端信任的证书颁发机构进行数字签名。