Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: Parent/child link between policies #401

Open
alexandremottier opened this issue Apr 16, 2021 · 6 comments
Open

Feature Request: Parent/child link between policies #401

alexandremottier opened this issue Apr 16, 2021 · 6 comments
Assignees
Labels
enhancement New feature or request

Comments

@alexandremottier
Copy link

alexandremottier commented Apr 16, 2021

Is your feature request related to a problem? Please describe.
It's possible to copy policies, but not to allow parent/child inheritance.

Describe the solution you'd like
Implementation of policy inheritance: A change to a parent policy affects all child policies. For each setting in the policies, allow to inherit from the parent or force a setting.

Describe alternatives you've considered
Currently, I delete policies when a setting no longer fits and recreate a copy of the policy I want to base it on.

@sadnub
Copy link
Collaborator

sadnub commented Apr 16, 2021

I think the policies are in need of some rework. Some ideas I have had are only a single policy can apply to a container or agent. Inheritance could be explicitly set from within the policy as well.

Another option is being able to disable inheritance on containers and agents.

@alexandremottier
Copy link
Author

alexandremottier commented Apr 16, 2021

That is a good idea.
The goal is : I'm adding a check on the root policy, so the child policies must inherit the new check, unless the child policy is configured to force a parameter.
In the case of some customers having more options than others, a check could be added to privileged customers but not on the others.
My vision of the policy is :

Root policy : no checks, no tasks, no patches
|--> Second level policy : checks, tasks and patches according to the customer contract
|--|--> The customer's policy with special parameters if needed.

Must be different policies for servers and workstations. It's possible to add another policy between root and second level policy to match the operating system.

For example :

Root servers policy
|--> Default Windows Servers Policy
|--|--> Privileged Customers Windows Server Policy
|--|--|--> Customer's servers policy

@sadnub
Copy link
Collaborator

sadnub commented Apr 25, 2021

Being able to block policy inheritance at the client, site, and agent level should be in the next release!

@sadnub sadnub self-assigned this Apr 25, 2021
@wh1te909
Copy link
Member

Released in 0.6.3

@alexandremottier
Copy link
Author

alexandremottier commented Apr 29, 2021

Hello @wh1te909 ,
After testing, the result does not exactly match my original idea. The update does the opposite.
For my part, I wanted to allow a legacy, like Russian dolls. In my company, we have several SLA levels for our customers, each giving access to different services. The NinjaRMM monitoring tool we currently use allows us to manage one policy per SLA level, with one policy per customer, inherited from the SLA level. On the customer policy, we then add any change requirements. But if there is a change on the SLA policy, the client policies below it must incorporate the settings that have not been changed on the client.
For example, I have a 24/7 SLA policy that 150 customers (out of 400 customers) depend on. If I change a setting on this policy (e.g. change the disk space alert from 95% to 90%), I don't want to have to go through all 150 affected customer policies to change. More importantly, I want inheritance to ensure that policies whose settings have not been changed explicitly apply the update immediately.

image

If I take the example of our current tool, NinjaRMM, I have a policy "SRV - NORMANDIE LOGISTIQUE (ENL)" (which concerns the servers of a client) which inherits the policy "0 SRV (Default) (noAV) (noPatch)". It can be seen that all the parameters of the client policy come from the parent policy except for the "Device has not rebooted in 90 day(s)" control.
If any other parameter changes on the parent policy, for example the CPU alert reset time, the client policy will automatically have this new setting applied.

This was the purpose of my feature request...

@wh1te909
Copy link
Member

reopening

@wh1te909 wh1te909 reopened this Apr 30, 2021
@sadnub sadnub added the enhancement New feature or request label May 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants