-
Notifications
You must be signed in to change notification settings - Fork 403
Fix: Add deployment.toml configuration for internal keystore for all affected versions (Product IS issue #27537) #6057
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
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -8,12 +8,12 @@ | |
| 2. Generate a keystore using an existing CA-signed certificate | ||
|
|
||
| !!! note | ||
| If you are creating a new keystore for [data encryption]({{base_path}}/deploy/security/asymmetric-encryption/use-asymmetric-encryption), make sure to acquire a public key certificate that contains the **Data Encipherment** key usage as explained [here]({{base_path}}/deploy/security/asymmetric-encryption/use-asymmetric-encryption/#recommendations-for-setting-up-keystores). | ||
|
Check failure on line 11 in en/includes/deploy/security/keystores/create-new-keystores.md
|
||
|
|
||
| ## Create a keystore using a new certificate | ||
|
|
||
| !!! note | ||
| The pubic key certificate we generate for the keystore is self-signed. For a CA-signed certificate, either [import it into the keystore](#add-ca-signed-certificates-to-keystores) or [create a new keystore with a CA-signed certificate](#create-a-keystore-using-an-existing-certificate). | ||
|
Check failure on line 16 in en/includes/deploy/security/keystores/create-new-keystores.md
|
||
|
|
||
| 1. Navigate to the `<IS_HOME>/repository/resources/security/` directory in a command prompt. All keystores should be stored here. | ||
|
|
||
|
|
@@ -21,7 +21,7 @@ | |
|
|
||
| === "JKS" | ||
| ``` bash | ||
| keytool -genkeypair -alias newcert -keyalg RSA -keysize 2048 -keystore newkeystore.jks -dname "CN=<testdomain.org>, OU=Home,O=Home,L=SL,S=WS,C=LK" -storepass mypassword -keypass mypassword | ||
|
Check failure on line 24 in en/includes/deploy/security/keystores/create-new-keystores.md
|
||
| ``` | ||
|
|
||
| This command will create a keystore with the following details. | ||
|
|
@@ -31,10 +31,10 @@ | |
| - **Keystore password**: `mypassword` | ||
| - **Private key password**: `mypassword` | ||
|
|
||
|
|
||
|
Check failure on line 34 in en/includes/deploy/security/keystores/create-new-keystores.md
|
||
| === "PKCS12" | ||
| ``` bash | ||
| keytool -genkeypair -alias newcert -keyalg RSA -keysize 2048 -storetype PKCS12 -keystore newkeystore.p12 -dname "CN=<testdomain.org>, OU=Home,O=Home,L=SL,S=WS,C=LK" -storepass mypassword -keypass mypassword | ||
|
Check failure on line 37 in en/includes/deploy/security/keystores/create-new-keystores.md
|
||
| ``` | ||
|
|
||
| This command will create a keystore with the following details. | ||
|
|
@@ -164,6 +164,45 @@ | |
|
|
||
| {% endif %} | ||
|
|
||
| After creating the internal keystore, you need to configure it in the `deployment.toml` file located in the `<IS_HOME>/repository/conf/` directory. | ||
|
|
||
| Add the following configuration based on your keystore type: | ||
|
|
||
| === "PKCS12" | ||
|
|
||
| ```toml | ||
| [keystore.internal] | ||
| file_name = "<internal-keystore-name>.p12" | ||
| type = "PKCS12" | ||
| alias = "<internal-key-alias>" | ||
| password = "$secret{keystore_password}" | ||
| key_password = "$secret{keystore_password}" | ||
| ``` | ||
|
|
||
| Replace the placeholders with the values you used when creating the keystore: | ||
|
|
||
| - `<internal-keystore-name>`: The name of your internal keystore file (without the `.p12` extension in the file name, but include it in the `file_name` parameter) | ||
| - `<internal-key-alias>`: The alias you specified when creating the keystore | ||
|
|
||
| === "JKS" | ||
|
|
||
| ```toml | ||
| [keystore.internal] | ||
| file_name = "<internal-keystore-name>.jks" | ||
| type = "JKS" | ||
| alias = "<internal-key-alias>" | ||
| password = "$secret{keystore_password}" | ||
| key_password = "$secret{keystore_password}" | ||
| ``` | ||
|
|
||
| Replace the placeholders with the values you used when creating the keystore: | ||
|
|
||
| - `<internal-keystore-name>`: The name of your internal keystore file (without the `.jks` extension in the file name, but include it in the `file_name` parameter) | ||
| - `<internal-key-alias>`: The alias you specified when creating the keystore | ||
|
Comment on lines
+198
to
+201
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Clarify the placeholder replacement instructions. Same clarity issue as the PKCS12 section above. The explanation about the extension is confusing. 📝 Suggested clearer wording Replace the placeholders with the values you used when creating the keystore:
- - `<internal-keystore-name>`: The name of your internal keystore file (without the `.jks` extension in the file name, but include it in the `file_name` parameter)
+ - `<internal-keystore-name>`: The name of your keystore (for example, if your keystore file is `internal.jks`, replace `<internal-keystore-name>` with `internal`)
- `<internal-key-alias>`: The alias you specified when creating the keystore🤖 Prompt for AI Agents |
||
|
|
||
| !!! note | ||
| The password values use the `$secret{}` syntax, which references encrypted passwords. You should encrypt the actual keystore password using the [Cipher Tool]({{base_path}}/deploy/security/encrypt-passwords-with-cipher-tool) and use the encrypted value. | ||
|
|
||
| !!! warning | ||
| Adding an internal keystore to an existing deployment will make already encrypted data unusable. This should be done during initial setup only. | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Clarify the placeholder replacement instructions.
The current explanation "(without the
.p12extension in the file name, but include it in thefile_nameparameter)" is confusing and appears contradictory. Since the template already showsfile_name = "<internal-keystore-name>.p12", users should understand they only need to replace the placeholder part.📝 Suggested clearer wording
Replace the placeholders with the values you used when creating the keystore: - - `<internal-keystore-name>`: The name of your internal keystore file (without the `.p12` extension in the file name, but include it in the `file_name` parameter) + - `<internal-keystore-name>`: The name of your keystore (for example, if your keystore file is `internal.p12`, replace `<internal-keystore-name>` with `internal`) - `<internal-key-alias>`: The alias you specified when creating the keystore📝 Committable suggestion
🤖 Prompt for AI Agents