Global Plugins - Support "exclude" of services/routes #7289
Replies: 32 comments 1 reply
-
for reference, see distinction between disabled and unavailable here: #1279 (comment). Similar approach could be used here as well probably. |
Beta Was this translation helpful? Give feedback.
-
@Tieske i do not think the attached ticket is helpful nor addressing the need The goal is to have Kong built in support for excluding global plugins from specific services. |
Beta Was this translation helpful? Give feedback.
-
@Tieske any update on this one? |
Beta Was this translation helpful? Give feedback.
-
making it bhave this way only for global plugins doesn't make sense. It would also be useful to have a plugin enbaled on a service (with say 10 routes), and then disable it on 1 of those routes. eg. 1 enable, 1 exception == 2 config items, as opposed to enabling it on 9 routes == 9 config items. |
Beta Was this translation helpful? Give feedback.
-
@Tieske right. |
Beta Was this translation helpful? Give feedback.
-
This I see is very limiting.... We will have many situations where we would like to configure a plugin on a service or globally but exclude it for certain exceptions. For example we want to use OAuth2 Introspection plugin on all of our 150 routes except for 2 of them. W/o this feature, we are forced to configure plugin on all the 148 endpoints by hand. Is there a way to increase the priority of this request ?? Please suggest |
Beta Was this translation helpful? Give feedback.
-
decK can help here in making it easy to manage the configuration: |
Beta Was this translation helpful? Give feedback.
-
#5233 (comment) |
Beta Was this translation helpful? Give feedback.
-
+1.it's a useful feature. |
Beta Was this translation helpful? Give feedback.
-
Doing this inside the Gateway could be a little more challenging. There are hacks possible like using tags to exclude a global plugin for a service/route but that would be a new pattern - tags are not used routing logic anywhere. The other way to solve this problem is my making it a configuration problem and moving the problem into decK: Kong/deck#339. The solution in decK could be a bit more generic where you could selectively include/exclude plugins. |
Beta Was this translation helpful? Give feedback.
-
currently there is the
This is what I meant with the older comment above. But how to deal with plugin schema/config validation? Skip validation all together, if |
Beta Was this translation helpful? Give feedback.
-
This seems to have stagnated since being converted from an issue. It would be nice to get more discussion around this. We have 38 services in kong and have to apply the same plugin configuration to 36 of them resulting in mountains of duplication and a config that is much larger than necessary. If you ever then need to dump the config back out to evaluate it's pretty difficult to do so. |
Beta Was this translation helpful? Give feedback.
-
+1
|
Beta Was this translation helpful? Give feedback.
-
Question for all: Today, one can configure a global plugin, or a plugin on a resource (route, service, consumer). The "match" would happen in addition to plugins configured on resources. |
Beta Was this translation helpful? Give feedback.
-
What is the status of this feature request of the current discussion? If anyone has any idea! |
Beta Was this translation helpful? Give feedback.
-
Such a basic functionality is missing since 2019. Is there any progress on the issue? |
Beta Was this translation helpful? Give feedback.
-
Any update? This would be a really useful feature so that we don't have to duplicate plugin configuration. |
Beta Was this translation helpful? Give feedback.
-
Any update on this feature, it is much needed feature since 2019 |
Beta Was this translation helpful? Give feedback.
-
What really seems to be desired is a way to have more fine-grained control over how plugins are attached. Currently, Kong gateway only provides Global, Service, Route and Consumer as possible scopes, and that hierarchy is insufficient for many use cases. The standard answer, however, has been to suggest the use of external tooling to generate the desired configuration - i.e. generate an instance of the desired plugin at each service/route/consumer that needs to have it. That said, we do see the need to improve in this area, but we have not reached consensus that global attachment + exclusions would be the best way going forward. Another idea that has been circulated is to allow plugins to be created in a "floating" manner, i.e. without an implicit attachment point, and then use a mechanism like labels to attach them to a route, service or consumer. Nothing in this area is going to make it into Kong quickly (i.e. it will take more months), so if you need to use the same plugin in many places, you'll need to instantiate it in all of those places. |
Beta Was this translation helpful? Give feedback.
-
Is there any update on this feature, or are there any plans to do something related to improving plugin attachment control? |
Beta Was this translation helpful? Give feedback.
-
Currently, Kong has the option of enabling a plugin per service/consumer, enabling it globally etc.
What is missing is the ability to enable a plugin globally, but to exclude it from certain services/paths.
E.g. when working with declarative configuration, i can see kong support the following:
(other valid option is to have a new attribute added to the global plugin definition, with excluded services/routes capability)
Beta Was this translation helpful? Give feedback.
All reactions