kibana icon indicating copy to clipboard operation
kibana copied to clipboard

[GenAI] Add License/productType controls to the integration assistant

Open semd opened this issue 8 months ago • 7 comments

Summary

Adds the licence and product type controls to the Integration assistant.

UI

  • ESS

Licence: The Enterprise license must be active to use the feature. It is checked inside the integration_assistant plugin itself by default and the license paywall is displayed in case the license requirement is not met, no need to configure anything from outside for the license check.

  • Serverless

Product type: The Security complete tier must be enabled to use the feature in security projects. The integration_assistant plugin exposes a contract API to set up a custom upselling. The product type check is performed in the security_solution_serverless plugin and the upselling component is passed to the integration_assistant plugin to be rendered.

API

The withAvailability wrapper has been introduced to encapsulate this availability check on all the routes. The isAvailable flag is defined at a plugin level and passed to the router context. The flag is defaulted to true and can be set to false by not having the Enterprise license (ESS), or by calling the setIsActive(false) contract exposed (serverless).

All API requests done while the license / product type requirements are not met will be responded with:

404 Not Found: This API route is not available using your current license/tier.

Screenshots

ESS:

ess

Serverless:

serverless

semd avatar Jun 27 '24 18:06 semd