# 匿名验证
1、创建Service
curl -i -X POST \ --url http://localhost:8001/services/ \ --data 'name=example-service' \ --data 'url=http://mockbin.org/request'
2、创建Route
curl -i -X POST \ --url http://localhost:8001/services/example-service/routes \ --data 'paths[]=/auth-sample'
3、然后访问:http://localhost:8000/auth-sample,就可以转发到http://mockbin.org/request
4、给Service配置一个key-auth(关键词认证)插件
curl -i -X POST \ --url http://localhost:8001/services/example-service/plugins/ \ --data 'name=key-auth'
获得一个plugin_id:7bead48d-53e5-4244-b82c-1af7249af964
5、这是再访问一下 http://localhost:8000/auth-sample
{"message": "No API key found in request"}
6、添加一个匿名消费者
curl -i -X POST \ --url http://localhost:8001/consumers/ \ --data "username=anonymous_users"
获得consumer_id:69855c08-2625-415f-b11e-188436c0ec6a
7、关联匿名消费者与key-auth插件
curl -i -X PATCH \ --url http://localhost:8001/plugins/7bead48d-53e5-4244-b82c-1af7249af964 \ --data "config.anonymous=69855c08-2625-415f-b11e-188436c0ec6a"
当然,关联之后就可以访问了,这样没什么意义。所以,一般会添加认证关键字进行认证。
curl -X POST http://localhost:8001/consumers/anonymous_users/key-auth -d 'key=test'
8、然后,就正常访问 http://192.168.1.12:8000/auth-sample?apikey=test
"headers": {
...
"x-consumer-id": "69855c08-2625-415f-b11e-188436c0ec6a",
"x-consumer-username": "anonymous_users",
...
}
...