wso2 / product-is

Welcome to the WSO2 Identity Server source code! For info on working with the WSO2 Identity Server repository and contributing code, click the link below.
http://wso2.github.io/
Apache License 2.0
748 stars 727 forks source link

Define Outbound provisioning flows based on the application type #13040

Open AnuradhaSK opened 2 years ago

AnuradhaSK commented 2 years ago

Describe the issue: Outbound provisioning flows should work based on the application type.

- Tenant specific Applications - Outbound configuration of the application should be used.

- SaaS Applications - If the outbound configuration is enabled in the SaaS app, the same config is applicable for other tenants. eg:

  1. Assume App A a SaaS app created in Tenant carbon.super, and it has been configured for outbound provisioning
  2. User management done via App A in carbon.super tenant will be provisioned to configured external systems
  3. User management done via App A in in Tenant foo will be provisioned to configured external systems
  4. Tenant foo admin can't manage(enable/disable) the outbound provisioning happening through App A

- System applications - (eg: console) The outbound provisioning configurations of a system app can be overlayed by other tenants. eg:

  1. Console app in Tenant carbon.super is considered as a system app. it has been configured for outbound provisioning
  2. User management done via console in carbon.super tenant will be provisioned to configured external systems based on the configs related to caron.super tenant's console app.
  3. Admin in Tenant foo should be able to configure another set of external systems for outbound provisioning. (i.e outbound provisioning of a system app can be overlayed by other tenants)

Environment information (Please complete the following information; remove any unnecessary fields) :

AnuradhaSK commented 2 years ago

Consider the changes done in https://github.com/wso2/product-is/issues/12993 when we revise the flow