【kong系列七】之ACL策略插件

ACL策略插件


策略分组规则:

1).为用户分配授权策略组

2).api添加授权策略分组插件。

3).只有拥有api授权策略分组的用户才可以调用该api

4).授权策略分组,必须建立在认证机制上,该策略生效的前提,api至少要开启任意一个auth认证插件。


使用教程:

1.创建一个ACL插件

如图,创建的分组,设置白名单open,黑名单dev-test,同时将这个插件应用到testACL这个api上。

【kong系列七】之ACL策略插件_第1张图片

2.反向验证

由于ACL必须和认证插件配合生效,我们选用基本认证basic-auth + ACL组合进行验证。

上一节基本认证 已经创建了basic-auth用户和秘钥:username=csOfBasicpassword=testkongpwd

我们使用上一节basic-auth创建的consumer进行访问:

basic-auth用户和秘钥:username=csOfBasicpassword=testkongpwd

【kong系列七】之ACL策略插件_第2张图片

返回消息:{"message":"You cannot consume this service"}

用户是合法用户(已经通过了basic-auth认证),但没有权限访问 testBasicAuthhttp://10.110.2.3:8000/test)这个api

kong的认证和权限是独立的。

3.给用户分配open分组

上一节的用户,因为不属于ACL=open的策略分组,所以不能访问。

现在,我们为该basic-auth用户创建ACL分组,如下图:

也可直接使用curl方式为用户增加ACL策略

curl -X POST http://*.*.*.*:8001/consumers/consumerOfBasic/acls  --data "group=open"  //注意此处的  consumerOfBasic basic-auth用户:username=csOfBasic的区别。

【kong系列七】之ACL策略插件_第3张图片

4.正向验证合法用户

再次执行,验证通过。返回结果如下:

【kong系列七】之ACL策略插件_第4张图片


你可能感兴趣的:(kong初探)