fix(LINK-4116): do not require org level permissions for project level integrations. #96
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
We have a reported customer issue where deploying a project-level GCP integration requires org-level permissions.
This happens due to a change from about a year back (#74) that requires us to have
resourcemanager.organizations.getpermissions for both project and organization level integrations. Our docs make no mention of this in the "required permissions" list.The reasoning behind this was that ideally we will report the org ID for all integrations so that UI views are more complete. However, this is a relatively minor piece of information and for many customers requiring org level permissions for a project level integration is a non-starter. It defeats the purposes in many cases.
As a consequence, I think it's best if we revert that change. Yes, we will not be able to get the org ID. But at least customers who need a project level integration due to a lack of org/root level permissions will be able to deploy without issue.
I also toyed with the idea of providing an override option instead of just eliminating the org permissions outright, but I felt that it makes for an unnecessarily convoluted deployment experience. Simpler to just remove it.
How did you test this change?
I deployed a project level integration without specifying an organization ID. My role did not have org level permissions and the deployment still worked fine.
Issue
https://lacework.atlassian.net/browse/LINK-4116