PAM360 Plugin for Jenkins7 minutes to read
Jenkins is a leading Java-based open source automation tool that is widely used in DevOps environments to build and test software projects continuously. SDLC tasks related to building, testing, and delivering or deploying software can be created as automation schedules in Jenkins, named as 'jobs.' Execution of these 'jobs' more often than not require user credentials and similar sensitive information like privileged passwords, API keys, and access tokens to interface with other systems and services. In most DevOps environments, such credentials are stored within plain text files in the Jenkins server, which can lead to a horde of security and management issues. The PAM360 plugin developed for secrets management in Jenkins helps improve security in organizations' DevOps pipeline. The plugin once enabled in Jenkins, ensures that required credentials are retrieved from PAM360's vault every time when a job is run, instead of being embedded in plain text within script files. Upon secure retrieval, the credentials can then be used in environment variables, such as connecting to a remote server for build activation. The plugin also saves the user from the arduous job of having to manually update the password in the script file every time there's an update. Often, there are instances when a user is unable to run a job since they're locked out of the target application or server owing to an outdated password in the script file. Now with the credentials stored in PAM360, they're regularly rotated and also updated in the respective remote device, which ensures that only latest passwords are retrieved from the vault while running jobs. Currently, the plugin can be used for secrets management at a job level, i.e. for freestyle project jobs. Read further to learn in detail on how to use the PAM360 plugin for secrets management in Jenkins:
1. Enabling Jenkins Integration in PAM360
2. Installing and Enabling the PAM360 Plugin in JenkinsThe following actions to be carried in Jenkins' console require a user role with the privilege to manage plugins in the tool. 2.1 Installing the Plugin
2.2 Enabling the Plugin
3. Retrieving Passwords from PAM360 for Jenkins' Freestyle Project JobsAt present, the plugin can be used to retrieve required credentials from PAM360 for Jenkins' freestyle project jobs. This requires adding various PAM360 attributes such as resource name, account name, and password while configuring the job. Upon this attribute configuration at job level, the value of these PAM360 attributes will be available as 'Environmental Variables' during job execution. When Jenkins connects to PAM360 to retrieve a specific password, the environmental variables will be how the former identifies the required values in the latter. Below is a step-wise explanation of the actions involved:
4. List of Available PAM360 Attributes
| |