wso2 / api-manager

All issues, tasks, improvements and new features of WSO2 API Manager
Apache License 2.0
34 stars 8 forks source link

Add visibility restrictions in the developer portal based on the Organizations #3061

Open chamilaadhi opened 1 month ago

chamilaadhi commented 1 month ago

Problem

Need to restrict API and applications based on the user organization. Refer https://docs.google.com/document/d/1U_rYpwpKyvM_hEzUzUVHJ7Gu-N-xu7Of97r4cRxlMQM/edit

Tasks

chamilaadhi commented 1 month ago

Initial implementation https://github.com/wso2/carbon-apimgt/pull/12512

This PR set visibility restriction for API using organization and filter API in the dev portal listing page based on the user organization

chamilaadhi commented 3 weeks ago

Add Application sharing for with the organization https://github.com/wso2/carbon-apimgt/pull/12517

chamilaadhi commented 3 weeks ago

Publisher side UI changes to set organization visibility to APIs https://github.com/wso2/apim-apps/pull/729

Screenshot 2024-08-21 at 10 29 39 AM
chamilaadhi commented 3 weeks ago

Additional fixes https://github.com/wso2/carbon-apimgt/pull/12519 https://github.com/wso2/carbon-apimgt/pull/12521

chamilaadhi commented 3 weeks ago

Add application sharing with the organization https://github.com/wso2/apim-apps/pull/730

Screenshot 2024-08-22 at 10 40 06 AM
chamilaadhi commented 2 weeks ago

Add capability to add organizations to business plans and filter it in the devportal for the API based on user organization https://github.com/wso2/carbon-apimgt/pull/12523

chamilaadhi commented 2 weeks ago

Moving to registry property to store organization information instead of introducing new field to rxt. https://github.com/wso2/carbon-apimgt/pull/12528

Above change needs carbon-registry fix https://github.com/wso2/carbon-registry/pull/440 as well. Currently we can only search with one registry property. with this we can use multiple properties

chamilaadhi commented 2 weeks ago

Since there is a new property added to the API, we need to do a registry resource migration. To prevent this, we could add a default property value to all the migrated API when generating the indexed data. Following PRs do this

https://github.com/wso2/carbon-apimgt/pull/12529 https://github.com/wso2/carbon-registry/pull/441

When migrating to the new version, with this change, we have to do a reindexing only

chamilaadhi commented 1 week ago

Setup IS 7.0 with APIM developer portal. IS 7 is setup as a federated authenticator. We need to add custom oidc claims to retrieve organization and organization id since it is not available in APIM

Following flow is configured

Screenshot 2024-09-04 at 5 38 12 PM

Steps on configuring can be found in https://docs.google.com/document/d/1MpsVrYCL4lT5p6rjB_ViAbU09yCCyzTLuDII9Clcsq0/edit?usp=sharing

chamilaadhi commented 3 days ago

Add organization visibility for subscription policy in admin porta

Screenshot 2024-09-09 at 2 04 44 PM

https://github.com/wso2/apim-apps/pull/738

chamilaadhi commented 9 hours ago

Pending tasks