Acl_file

1.功能描述

ACL是Access Control List(访问控制列表)的缩写,它是一种用于访问控制的技术.控制面的每个模块提供了可选的配置指令limit_except,通过limit_except 指令,针对http 方法,进行鉴权.

2.依赖模块

无依赖模块

3.配置样例

njet_ctrl.conf

    server {
        listen       8081;

        location /api {
            dyn_module_api;
            limit_except GET{
               auth_basic "OpenNJet API";
               auth_basic_user_file /root/bug/njet1.0/htpasswd;
            }
        }
   }     

生成用户名,密码:

  • 安装:yum install httpd-tools -y
  • 生成密码:htpasswd -c -d /home/njet/api_acl/htpasswd test(用户名)

4.调用样例

njet_ctrl.conf 配置文件中配置了acl 后,访问kv 模块时需要用如下命令(需要添加用户名和密码):

curl --user 用户名:密码 -X 'POST'   'http://192.168.40.158:8088/api/v1/kv'   -H 'accept: */*'   -H 'Content-Type: application/json'   -d '{
  "key": "test_key",
  "value": "test msg"
}'

获取键值对

curl -X 'GET'   'http://192.168.40.158:8088/api/v1/kv?key=test_key'