Jira (PUP-7633) need to show that module config cannot be overridden

6 views
Skip to first unread message

Henrik Lindberg (JIRA)

unread,
Jun 8, 2017, 10:42:02 AM6/8/17
to puppe...@googlegroups.com
Henrik Lindberg created an issue
 
Puppet / Story PUP-7633
need to show that module config cannot be overridden
Issue Type: Story Story
Assignee: Unassigned
Created: 2017/06/08 7:41 AM
Priority: Normal Normal
Reporter: Henrik Lindberg

In an organization that has security compliance issues there is the need to show that parameters set in a module are final.

This means that regular use of hiera data in a sensitive module can not be used because all of the parameters defined that way can be overridden in the environment and global layers.

The author of a module would however like to use hierarchical data and integration with hiera backends and construct the logic with APL.

Since this is not possible, the current work around is to write custom functions that read data files in yaml, and/or call custom functions to get data from external sources. These do not work with APL. Alternatively the user is stuck with params.pp and defining the values in code.

The features we have proposed for partial ordering of layers etc. do not help as they all allow for overrides to be made outside of the control of the module.

We have a similar use case in MEEP where a completely private hierarchy is needed.

I can imagine that part of the solution is to support private defines and classes and to specify that those may not have their parameters bound in higher layers (i.e their bindings in hiera are private and final in the module). To make them configurable they would need to have public wrappers that define the API for the public (and variable) subset the module supports.
Such a solution seems more appealing than trying to come up with a mechanism for a private layer or by trying to work in specification of "final" declarations in keys in the hiera data.

More user research is needed to see if that is a workable solution. It seems reasonable to assume that it should not be possible to provide arguments to private defines and classes as they are indeed private and can only be instantiated by the module they are private too.

(In addition, work is needed to prevent overrides to take place using collections).

Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v6.4.14#64029-sha1:ae256fe)
Atlassian logo

Geoff Nichols (JIRA)

unread,
Jul 6, 2017, 1:24:03 PM7/6/17
to puppe...@googlegroups.com

Maggie Dreyer (JIRA)

unread,
Oct 29, 2018, 7:33:02 PM10/29/18
to puppe...@googlegroups.com
Maggie Dreyer updated an issue
Change By: Maggie Dreyer
Team: Server Coremunity
This message was sent by Atlassian JIRA (v7.7.1#77002-sha1:e75ca93)
Atlassian logo

Josh Cooper (Jira)

unread,
Apr 30, 2020, 2:54:03 PM4/30/20
to puppe...@googlegroups.com
Josh Cooper updated an issue
Change By: Josh Cooper
Team: Coremunity
This message was sent by Atlassian Jira (v8.5.2#805002-sha1:a66f935)
Atlassian logo

Josh Cooper (Jira)

unread,
Apr 27, 2022, 12:25:03 AM4/27/22
to puppe...@googlegroups.com
Josh Cooper updated an issue
Change By: Josh Cooper
Epic Link: PUP-6870
This message was sent by Atlassian Jira (v8.20.2#820002-sha1:829506d)
Atlassian logo

Josh Cooper (Jira)

unread,
Apr 27, 2022, 12:26:02 AM4/27/22
to puppe...@googlegroups.com
Josh Cooper updated an issue
Change By: Josh Cooper
Component/s: Hiera & Lookup
Reply all
Reply to author
Forward
0 new messages