HMAC 仅用于私有 API
HMAC for only private API
我们有两种类型的 API 端点; public 和私人。是否可以仅在专用端点上使用 HMAC?
e.g.
GET https://api.example.com/items ... This is public API. No need HMAC.
POST https://api.example.com/users/john/friends ... This is private API. It needs HMAC. We want to confirm that John send this request by checking HMAC signature.
以下是hmac-auth插件的安装。好像没有public和私有的区别
curl -i -X POST \
--url http://localhost:8001/apis/api.example.com/plugins/ \
--data "name=hmac-auth"
我找到了答案并将其发布到 kong github issue。 https://github.com/Mashape/kong/issues/2120#issuecomment-281890169
(1) 创建 2 个 API 具有不同的 request_path(没有 request_host)
curl -i -X POST \
--url http://localhost:8001/apis/ \
--data 'name=example-items-api' \
--data 'upstream_url=http://api.example.com/' \
--data 'request_path=/items'
curl -i -X POST \
--url http://localhost:8001/apis/ \
--data 'name=example-users-api' \
--data 'upstream_url=http://api.example.com/' \
--data 'request_path=/users'
(2) 为 'example-users-api' API
应用 HMAC 插件
curl -i -X POST \
--url http://localhost:8001/apis/example-users-api/plugins/ \
--data "name=hmac-auth"
我们有两种类型的 API 端点; public 和私人。是否可以仅在专用端点上使用 HMAC?
e.g.
GET https://api.example.com/items ... This is public API. No need HMAC.
POST https://api.example.com/users/john/friends ... This is private API. It needs HMAC. We want to confirm that John send this request by checking HMAC signature.
以下是hmac-auth插件的安装。好像没有public和私有的区别
curl -i -X POST \
--url http://localhost:8001/apis/api.example.com/plugins/ \
--data "name=hmac-auth"
我找到了答案并将其发布到 kong github issue。 https://github.com/Mashape/kong/issues/2120#issuecomment-281890169
(1) 创建 2 个 API 具有不同的 request_path(没有 request_host)
curl -i -X POST \
--url http://localhost:8001/apis/ \
--data 'name=example-items-api' \
--data 'upstream_url=http://api.example.com/' \
--data 'request_path=/items'
curl -i -X POST \
--url http://localhost:8001/apis/ \
--data 'name=example-users-api' \
--data 'upstream_url=http://api.example.com/' \
--data 'request_path=/users'
(2) 为 'example-users-api' API
应用 HMAC 插件curl -i -X POST \
--url http://localhost:8001/apis/example-users-api/plugins/ \
--data "name=hmac-auth"