Use password encryption with Pentaho
Strengthen security by using encrypted passwords for Pentaho applications.
For IT administrators, who have permissions to modify files on the server and the permission to stop and start the server, perform these tasks when you want to enhance your company's security by encrypting the passwords that are currently stored as plain text in configuration files, for example, if you want to meet specific server security levels for regulatory compliance.
As a best practice, stop the server before modifying configuration files, then start the server when finished. After you have configured a Pentaho product to use encrypted passwords, all logins with the Pentaho product will use the encrypted passwords. Connect to any databases that were edited to ensure all changes are correct.
Use this topic to:
Encrypted passwords are supported for:
You can also use encrypted passwords with JDBC security. See the Administer Pentaho Data Integration and Analytics document for instructions on switching to JDBC security.
Encrypting a password
Perform the following steps on the machine with the Pentaho Server to create an encrypted password.
Stop the server.
For instructions, see Stop and start the Pentaho Server and repository.
At the command line, navigate to the
server/pentaho-serverdirectory.Run
encr.bat(Windows) orencr.sh(Linux).Example:
The console prints the encrypted password.
Note: You must have a JRE or JDK installed.
Restart the server.
Use encrypted passwords with Pentaho products
How you apply an encrypted password varies by product.
Pentaho Data Integration (PDI)
Perform the following steps to use an encrypted password with Pentaho Data Integration (PDI).
Stop the server.
For instructions, see Stop and start the Pentaho Server and repository.
Navigate to the
design-tools/data-integration/simple-jndidirectory.Open the
jdbc.propertiesfile in a text editor.Replace all instances of the
passwordvalue with the encrypted password.Save and close the file.
Restart the server and verify the change.
Pentaho User Console (PUC)
Perform the following steps to use an encrypted password with the Pentaho User Console (PUC).
Stop the server.
For instructions, see Stop and start the Pentaho Server and repository.
Navigate to the
server/pentaho-server/tomcat/webapps/pentaho/META-INFdirectory.Open the
context.xmlfile in a text editor.Replace the
passwordvalue in everyResourceelement with the encrypted password.Save and close the file.
Restart the server and verify the change.
PUC email
After you configure PUC to use an encrypted password, you can use that password with PUC email.
Log in to PUC as an administrator.
Open the Administration Perspective.
Select the Mail server section.
Enter your encrypted password value in the
passwordfield.Note: If you use Gmail, enable Allow less secure apps to access your account.
Select Test Email Configuration.
Verify that PUC sends an email to the address you specified.
Pentaho Aggregation Designer
To use encrypted passwords with Pentaho Aggregation Designer, you must first centralize your passwords in a jndi.properties file.
Stop the server.
For instructions, see Stop and start the Pentaho Server and repository.
Create a
jndi.propertiesfile with the default properties:Save
jndi.propertiesin thedesign-tools/aggregation-designer/libdirectory.In the user’s home directory, navigate to the
.pentaho/simple-jndidirectory.Open
default.propertiesin a text editor.If
default.propertiesdoes not exist, create it.If you created
default.propertiesunderdesign-tools/aggregation-designer/simple-jndi, updateorg.osjava.sj.rootindesign-tools/aggregation-designer/lib/jndi.propertiesto point to it. Example:
Replace the
passwordvalue in every property indefault.propertieswith the encrypted password.Note: If you use a remote repository, replace
localhostwith the repository IP address.Save and close the file.
Restart the server and verify the change.
Pentaho Metadata Editor (PME)
The Pentaho Metadata Editor (PME) stores passwords in the JNDI connection default.properties file. For setup details, see Define JNDI connections for Report Designer and Metadata Editor.
Stop the server.
For instructions, see Stop and start the Pentaho Server and repository.
In the user’s home directory, navigate to the
.pentaho/simple-jndidirectory.Open
default.propertiesin a text editor.Note: If
default.propertiesdoes not exist, create it.Replace the
passwordvalue in every property with the encrypted password.Note: If you use a remote repository, replace
localhostwith the repository IP address.Save and close the file.
Restart the server and verify the change.
Pentaho Report Designer (PRD)
The Pentaho Report Designer (PRD) stores passwords in the JNDI connection default.properties file. For setup details, see Define JNDI connections for Report Designer and Metadata Editor.
Stop the server.
For instructions, see Stop and start the Pentaho Server and repository.
Navigate to the
design-tools/report-designer/configuration-template/simple-jndidirectory.Open
default.propertiesin a text editor.Replace the
passwordvalue in every property with the encrypted password.Note: If you use a remote repository, replace
localhostwith the repository IP address.Save and close the file.
Copy
default.propertiesto the.pentaho/simple-jndidirectory in the user’s home directory. Replace the existing file.Note: If the
.pentaho/simple-jndidirectory does not exist, create it.Restart the server and verify the change.
After you update a product
After you configure a product to use encrypted passwords, all logins with that product use encrypted passwords.
Connect to any databases you updated to verify the changes.
Last updated
Was this helpful?

