在API异常流量管控中,黑白名单机制主要通过以下方式运作:
白名单是由被允许访问API的特定实体(如IP地址、用户标识、设备标识等)组成的列表。企业根据自身业务需求和安全策略,预先确定哪些实体是可信的,并将它们添加到白名单中。例如,对于企业内部的API,可能会将公司内部办公网络的IP地址范围添加到白名单;对于面向特定合作伙伴的API,会将合作伙伴公司的特定IP地址或经过认证的用户标识添加到白名单。
当一个请求到达API时,管控系统首先检查请求的来源是否在白名单中。如果请求来源在白名单内,那么这个请求将被允许正常访问API,无需经过额外的复杂验证(在白名单信任范围内的前提下)。例如,白名单中的IP地址对API的访问会被直接放行,系统会按照正常的业务流程处理该请求。
白名单需要定期维护和更新。随着企业业务的发展、合作伙伴的变更或者内部网络结构的调整,白名单中的实体可能会发生变化。企业需要及时添加新的可信实体,删除不再可信或者不再需要的实体,以确保白名单的准确性和有效性。
黑名单是由被禁止访问API的实体组成的列表。这些实体通常是通过各种手段被识别为可能对API造成威胁的,如恶意攻击者、滥用API的客户端等。识别方式包括但不限于检测到异常流量模式(如频繁的暴力破解尝试、超量的请求等)、与已知恶意IP地址库匹配等。一旦某个实体被确定为恶意或不符合要求的,就会被添加到黑名单中。
当一个请求来自黑名单中的实体时,API管控系统会立即拦截该请求,不允许其访问API。例如,如果一个IP地址因为多次发起DDoS攻击而被添加到黑名单,那么这个IP地址后续对API的所有请求都会被直接拒绝,从而保护API免受恶意攻击。
黑名单也需要动态管理。一方面,随着时间的推移,有些被误判为恶意的实体可能实际上是正常的,需要经过一定的评估和验证后从黑名单中移除;另一方面,新的恶意实体不断出现,需要持续监控并将新的威胁源添加到黑名单中。同时,对于一些有时效性的黑名单(如针对特定时间段内的攻击源),在过期后也需要进行相应的处理。