-
Notifications
You must be signed in to change notification settings - Fork 591
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
KIC: investigate if Kong can do mTLS on the Admin API or not #671
Comments
This is simple enough to do with directive injection, which we can use to take advantage of NGINX's standard client certificate verification: In kong.conf:
This gist contains the test certs used and instructions for creating them using cfssl. Creating and signing new certs isn't really necessary (the existing test certs look fine), but it may be useful to show how: With the certs in place, this shows the test procedure: Challenges with this approach:
|
Thank you for working on this, @rainest and this is great news.
I don't think either of these are limitations. We can achieve our goal without these. (I know you were being explicit and noting the details, I'm doing the same).
This does make it a little heavier than it should be but once set up, these pain should go away. We should be able to solve this problem with good documentation. The scope of the ticket to investigate, which is complete and I'm going to close this issue. |
Currently, there is a controller is deployed alongside each proxy container of a kong inside the same pod. This works well for some cases but it will be more efficient and operationally sustainable if controller can be deployed as a pod and the proxy is deployed as a daemon set which can be scaled as needed. This is currently possible for kong deployments that are powered by a database but not in the DB-less mode.
To get this to work, Admin API needs to be exposed outside the pod, and it should be authenticated as well.
The task here is to investigate if Kong's Admin API can support mTLS using Nginx directive injection or not. If yes, test it. If all looks good, then we will create new issues to implement mTLS-based authentication between the controller and Kong's proxy pods.
The text was updated successfully, but these errors were encountered: