Forge Home


Change setting in AIX security files. (fork of bwilcox-chsec)


2,916 latest version

5.0 quality score

Version information

  • 0.1.5 (latest)
  • 0.1.4
released Jul 6th 2020
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 4.7.0 < 7.0.0

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'larkit-chsec', '0.1.5'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add larkit-chsec
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install larkit-chsec --version 0.1.5

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.



larkit/chsec — version 0.1.5 Jul 6th 2020


Build Status Puppet Forge Puppet Forge Puppet Forge Puppet Forge

Table of Contents

  1. Description
  2. Setup - The basics of getting started with chsec
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations - OS compatibility, etc.
  6. Development - Guide for contributing to the module


This is the chsec module. It is a fork of bwilcox-chsec, in order to release fixes.

It's purpose in life is to manage attribute files in a specific format on AIX servers using the proper AIX commands:

  • lssec
  • chsec

The list of files that this module can edit is found in the aix manpage for chsec. An example of one of these files is /etc/security/user.

It probably has no bearing at all for any other OS out there.

This module is ensurable. It will check the given properties and change them as specified if they deviate from the expected value.


Setup Requirements

Add the module to your modules path and let pluginsync do the rest.

Beginning with chsec

chsec takes the following parameters:

  • attribute: This is the name of the attribute, ie. "minage" in /etc/security/user.
  • value: This is the value the attribute should be set to.
  • file: This is the file that the attribute lives in.
  • stanza: This is the stanza the value should be set for.


chsec { "default_minage": ensure => present, attribute => 'minage', value => '2', file => '/etc/security/user', stanza => 'default' }

This will check the 'minage' attribue of the 'default' stanza in the '/etc/security/user' file and if it is not present or not set to '2', change it to be '2'.

Because it is ensurable, setting ensure to 'absent' in this example would check for the presence of 'minage' in the 'default' stanza of '/etc/security/user' and remove it if found.


Public Type

  • chsec


  • attribute: This is the thing to change, ie. "minage" in /etc/security/user.
  • value: This is the value the attribute should be set to.
  • file: This is the file that the attribute lives in.
  • stanza: This is the stanza the value should be set for.


This was written for AIX. Other OS' have other ways to do the same thing, I wanted one that worked with AIX's standard commands for manipulating entries in security files. This should work for any file that the AIX 'chsec' command will work with. See the AIX 'chsec' man page for a listing.

This version has been deployed on PE 2015.3.3. An internally produced version ran on 3.7, but was never released to the forge. This version hasn't been tested on the older Puppet releases.


If you've got a better way to do things, please feel free to make merge requests.

Release Notes/Contributors/Etc

I hope someone else out there finds this useful.