The purpose of this issue is to discuss the changes to the three resources in the kanali.io API group.
Design Goals
refactor current configuration items
add functionality
ApiProxy changes
The new ApiProxy spec will hold the following first level structure. This will group current configuration items into logical group instead of having them all at the first level.
spec:
source:
target:
plugins:
allow for the creation of a proxy by a unique virtual host and path as opposed to just path:
source:
path: /foo
virtualHost: foo.bar.com
add functionality to proxy to arbitrary endpoints:
target:
backend:
endpoint: https://api.google.com
allow for arbitrary configuration of plugins:
this will be an ideal place to place an audience id for a JWT plugin.
plugins:
name: apiKey
version: v1.0
config:
bindings:
bindingOne
bindingTwo
##### `ApiKey` changes
allow for non breaking api key rotation. tracked in #63
ApiKeyBinding changes
remove proxyName field as this will now be configured via the arbitrary config options mentioned above.
Design Goals
ApiProxy
changesThe new
ApiProxy
spec will hold the following first level structure. This will group current configuration items into logical group instead of having them all at the first level.ApiKeyBinding
changesproxyName
field as this will now be configured via the arbitrary config options mentioned above.