You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On v1, we had some default policies: one granting all tokens access to ingest endpoints (like /data-collector/v0) and a few others granting all users access to cfgmgmt things (GET client runs, etc)
On v2, the ingest endpoints moved under the infra:* namespace (aka the new name for cfgmgmt). This meant users got access the formerly client-only endpoints when they got infra:* permissions. To minimize security risks, we decided to add a DENY statement so users could not access infra:ingest:* endpoints (like /data-collector/v0)
This causes problems however because it blocks admins from using infra:ingest endpoints. Admins should be able to do anything that won't break the system (like deleting themselves)
This will take longer and might require some migrations (if customers made new policies with infra:ingest:*, but in the end might represent the ingest actions more accurately.
Option 2
We remove the DENY statement and only grant users access to non infra:ingest:* actions
Current Solution
On v1, we had some default policies: one granting all tokens access to
ingest
endpoints (like /data-collector/v0) and a few others granting all users access tocfgmgmt
things (GET client runs, etc)On v2, the
ingest
endpoints moved under theinfra:*
namespace (aka the new name for cfgmgmt). This meant users got access the formerly client-only endpoints when they gotinfra:*
permissions. To minimize security risks, we decided to add a DENY statement so users could not accessinfra:ingest:*
endpoints (like /data-collector/v0)This causes problems however because it blocks admins from using
infra:ingest
endpoints. Admins should be able to do anything that won't break the system (like deleting themselves)Option 1
We move https://github.com/chef/automate/blob/master/api/external/ingest/chef.proto and https://github.com/chef/automate/blob/master/components/automate-gateway/api/legacy/legacy.proto endpoints into their own top-level
ingest:*
namespace. Then the v1 default policies can be migrated to v2 as:This will take longer and might require some migrations (if customers made new policies with
infra:ingest:*
, but in the end might represent the ingest actions more accurately.Option 2
We remove the DENY statement and only grant users access to non
infra:ingest:*
actionsThis is the quickest option
The text was updated successfully, but these errors were encountered: