Skip to content

Commit 1cabee3

Browse files
committed
Merge branch 'main' into sync/cf232
2 parents 4d36e44 + 6ccd0bd commit 1cabee3

File tree

28 files changed

+457
-94
lines changed

28 files changed

+457
-94
lines changed

.vscode/settings.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"github-enterprise.uri": "https://git.cwp.pnp-hcl.com"
3+
}

docs/deploy_dx/install/kubernetes_deployment/image_list.md

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,45 @@ In future continuous delivery updates, entitled customers can obtain the HCL DX
1313

1414
Video: [How to upload HCL DX 9.5 container images to a private repository](https://youtu.be/XJONRdpgCuo)
1515

16+
## HCL DX 9.5 Compose CF232
17+
18+
If you are deploying the HCL DX 9.5 Compose CF232 release, the following software packages are available in your MHS portal HCL DX Compose v9.5 entitlements:
19+
20+
- HCL DX Compose v9.5
21+
- HCL DXClient
22+
- HCL Leap 9.3.x for use with DX Compose
23+
- HCL Volt Foundry 9.5.x for use with DX Compose
24+
25+
## hcl-compose-kubernetes-CF232.zip
26+
27+
```shell
28+
HCL DX Compose notices CF232.txt
29+
hcl-dx-content-composer-image-v1.45.0_20251204-1947.tar.gz
30+
hcl-dx-dam-plugin-google-vision-image-v1.0.0_20251204-1947.tar.gz
31+
hcl-dx-dam-plugin-kaltura-image-v1.0.0_20251204-1946.tar.gz
32+
hcl-dx-deployment-v2.43.0_20251211-1531.tgz
33+
hcl-dx-digital-asset-manager-image-v1.44.0_20251204-2000.tar.gz
34+
hcl-dx-file-processor-image-v2.0.0_20251204-1927.tar.gz
35+
hcl-dx-haproxy-image-v1.28.0_20251204-1927.tar.gz
36+
hcl-dx-image-processor-image-v1.45.0_20251204-1930.tar.gz
37+
hcl-dx-license-manager-image-v95_CF232_20251204-1943.tar.gz
38+
hcl-dx-logging-sidecar-image-v1.0.0_20251204-1942.tar.gz
39+
hcl-dx-openldap-image-v2.6.8_20251204-1957.tar.gz
40+
hcl-dx-opensearch-image-v2.0.0_20251204-1942.tar.gz
41+
hcl-dx-people-service-image-v1.0.0_20251204-1940.tar.gz
42+
hcl-dx-persistence-connection-pool-image-v1.42.0_20251204-1931.tar.gz
43+
hcl-dx-persistence-metrics-exporter-image-v1.40.0_20251204-1931.tar.gz
44+
hcl-dx-persistence-node-image-v1.32_20251204-1931.tar.gz
45+
hcl-dx-prereqs-checker-image-v1.0.0_20251204-1938.tar.gz
46+
hcl-dx-ringapi-image-v1.45.0_20251204-1932.tar.gz
47+
hcl-dx-runtime-controller-image-v95_CF232_20251204-1936.tar.gz
48+
hcl-dx-search-middleware-image-v2.0.0_20251204-1944.tar.gz
49+
hcl-dx-search-v2.30.0_20251211-1530.tgz
50+
hcl-dx-webengine-image-CF232_20251205-0057.tar.gz
51+
out.txt
52+
```
53+
54+
<!--
1655
## HCL DX 9.5 Compose CF231
1756
1857
If you are deploying the HCL DX 9.5 Compose CF231 release, the following software packages are available in your MHS portal HCL DX Compose v9.5 entitlements:
@@ -50,7 +89,6 @@ hcl-dx-search-v2.29.0_20251027-1916.tgz
5089
hcl-dx-webengine-image-CF231_20251025-2351.tar.gz
5190
```
5291
53-
<!--
5492
## HCL DX 9.5 Compose CF230
5593
5694
If you are deploying the HCL DX 9.5 Compose CF230 release, the following software packages are available in your MHS portal HCL DX Compose v9.5 entitlements:

docs/deploy_dx/install/kubernetes_deployment/kubernetes_runtime.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,9 @@ Review your chosen Kubernetes platform and ensure that it supports the following
3737

3838
|CF Level|Kubernetes versions|
3939
|--------------|-----------------|
40+
|CF232| Kubernetes 1.34<br/>Kubernetes 1.33<br/>Kubernetes 1.32<br/>Kubernetes 1.31<br/>Kubernetes 1.30<br/>Kubernetes 1.29<br/>Kubernetes 1.28<br/>Kubernetes 1.27<br/>Kubernetes 1.26<br/>|
4041
|CF231| Kubernetes 1.34<br/>Kubernetes 1.33<br/>Kubernetes 1.32<br/>Kubernetes 1.31<br/>Kubernetes 1.30<br/>Kubernetes 1.29<br/>Kubernetes 1.28<br/>Kubernetes 1.27<br/>Kubernetes 1.26<br/>|
4142
|CF230| Kubernetes 1.34<br/>Kubernetes 1.33<br/>Kubernetes 1.32<br/>Kubernetes 1.31<br/>Kubernetes 1.30<br/>Kubernetes 1.29<br/>Kubernetes 1.28<br/>Kubernetes 1.27<br/>Kubernetes 1.26<br/>|
42-
|CF229| Kubernetes 1.33<br/>Kubernetes 1.32<br/>Kubernetes 1.31<br/>Kubernetes 1.30<br/>Kubernetes 1.29<br/>Kubernetes 1.28<br/>Kubernetes 1.27<br/>Kubernetes 1.26<br/>|
4343

4444
!!!important
4545
To prevent a possible Kubernetes deployment failure in Kubernetes versions 1.28 and 1.29, it may be required to run the command `modprobe br_netfilter` before running `kubeadm init`. This is a potential solution to avoid a networking bridge/iptables issue.

docs/deploy_dx/install/kubernetes_deployment/preparation/get_the_code/configure_harbor_helm_repo.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Configure Harbor Helm Repository
22

3-
The HCL Digital Experience (DX) Compose 9.5 container images and Helm charts can be accessed from the [HCL Harbor container repository](https://hclcr.io/){target="_blank"}. Customers with credentials to access entitled software on the HCL Software Licensing Portal can apply those credentials to access these HCL DX Compose 9.5 components.
3+
The HCL Digital Experience (DX) Compose 9.5 container images and Helm charts can be accessed from the [HCL Harbor container repository](https://hclcr.io/){target="_blank"}. Customers with credentials to access entitled software on the [My HCLSoftware (MHS) portal](https://my.hcltechsw.com/){target="blank"} can apply those credentials to access these HCL DX Compose 9.5 components.
44

55
The Harbor repository is updated with a registry based on Open Container Initiative (OCI) standards. The Helm chart command is updated to be OCI-compliant.
66

docs/deploy_dx/install/kubernetes_deployment/preparation/mandatory_tasks/prepare_configure_networking.md

Lines changed: 44 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Configure Networking
22

3-
This section explains what must be configured from a networking perspective to get HCL Digital Experience Compose 9.5 running in your Kubernetes or OpenShift cluster, and to provide accessibility to your deployment from outside the Cluster.
3+
This section explains what must be configured from a networking perspective to get HCL Digital Experience (DX) Compose 9.5 running in your Kubernetes or OpenShift cluster, and to provide accessibility to your deployment from outside the Cluster.
44

55
## Full Kubernetes or OpenShift deployment
66

@@ -27,7 +27,7 @@ If you do not know the hostname beforehand, you can leave it blank and run an ad
2727
2828
## Configure Cross Origin Resource Sharing (CORS)
2929
30-
The HCL Digital Experience Compose 9.5 Helm Chart allows you to configure CORS configuration for all the `addon` to WebEngine applications such as Digital Asset Management or Ring API. This allows you to access the APIs provided by those applications in other applications with ease.
30+
The HCL DX Compose 9.5 Helm chart allows you to configure CORS configuration for all the `addon` to WebEngine applications such as Digital Asset Management or Ring API. This allows you to access the APIs provided by those applications in other applications with ease.
3131

3232
You can define a list of allowed hosts for a specific application using the following syntax in your `custom-values.yaml`:
3333

@@ -51,7 +51,7 @@ For HAProxy to allow forward requests to your applications, you must provide it
5151

5252
## Configure HAProxy networking
5353

54-
HAProxy is deployed with a `LoadBalancer` type service to handle the incoming traffic as well as the SSL offloading for HCL Digital Experience. In addition, the Helm deployment offers adjustability for HAProxy and its services to allow for more flexible deployment and use of custom `Ingress Controllers`.
54+
HAProxy is deployed with a `LoadBalancer` type service to handle the incoming traffic as well as the SSL offloading for HCL DX. In addition, the Helm deployment offers adjustability for HAProxy and its services to allow for more flexible deployment and use of custom `Ingress Controllers`.
5555

5656
|Parameter|Description| Type | Default value|
5757
|---------|-----------|-------------|------|
@@ -127,7 +127,7 @@ To have your deployment and HAProxy to use the certificate, you must store it in
127127
The secret can be created using the following commands:
128128

129129
!!!note
130-
The secret name can be chosen by you and must be referenced in the next configuration step (the following example uses `dx-tls-cert`). The namespace is the Kubernetes namespace where you want to deploy HCL Digital Experience Compose 9.5 to (the example uses `digital-experience-compose`).
130+
The secret name can be chosen by you and must be referenced in the next configuration step (the following example uses `dx-tls-cert`). The namespace is the Kubernetes namespace where you want to deploy HCL DX Compose 9.5 to (the example uses `digital-experience-compose`).
131131

132132
```sh
133133
# Create secret with the name "dx-tls-cert"
@@ -189,7 +189,7 @@ spec:
189189

190190
## Configuring Content-Security-Policy Frame Options
191191

192-
The HCL Digital Experience Compose 9.5 Helm Chart allows you to configure **[Content Security Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-ancestors){target="blank"}: frame-ancestors** for DX WebEngine and all other components, such as Digital Asset Management, Ring API, etc.
192+
The HCL DX Compose 9.5 Helm chart allows you to configure **[Content Security Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-ancestors){target="blank"}: frame-ancestors** for DX WebEngine and all other components, such as Digital Asset Management, Ring API, etc.
193193

194194
Setting `cspFrameAncestorsEnabled` to true adds `content-security-policy: frame-ancestor 'self'` headers to the responses, enabling you to frame DX and other add-on applications.
195195

@@ -220,7 +220,7 @@ Refer to the HCL DX Compose 9.5 `values.yaml` detail for all possible applicatio
220220

221221
## Configuring SameSite Cookie Attribute
222222

223-
The HCL Digital Experience Compose 9.5 Helm Chart allows you to configure **[SameSite Cookie Attribute](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite){target="blank"}** for DX WebEngine. This configuration sets the `WASReqURL` Cookie Attributes `Secure` and `SameSite`.
223+
The HCL DX Compose 9.5 Helm chart allows you to configure **[SameSite Cookie Attribute](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite){target="blank"}** for DX WebEngine. This configuration sets the `WASReqURL` Cookie Attributes `Secure` and `SameSite`.
224224

225225
!!!note
226226
This should only be set in an HTTPS environment to prevent unwanted behaviors.
@@ -238,3 +238,41 @@ networking:
238238
```
239239

240240
Refer to the HCL DX Compose 9.5 `values.yaml` detail for all possible applications that can be configured.
241+
242+
## HAProxy custom headers
243+
244+
The HCL DX 9.5 Helm chart allows you to configure custom HTTP headers in the HAProxy configuration. You can both add new headers and remove existing headers from responses generated by HAProxy.
245+
246+
### Adding custom headers
247+
248+
You can add custom HTTP headers to all responses from HAProxy using the `customHeader` property. This is useful for implementing security best practices or adding specific information to responses.
249+
250+
Each header entry supports the following properties:
251+
252+
- `name`: The name of the HTTP header to be added
253+
- `value`: The value that should be set for the header
254+
255+
Example configuration in your `custom-values.yaml` file:
256+
257+
```yaml
258+
networking:
259+
haproxy:
260+
customHeader:
261+
- name: X-Content-Type-Options
262+
value: nosniff
263+
- name: Referrer-Policy
264+
value: no-referrer
265+
```
266+
267+
### Removing headers
268+
269+
You can specify header names that should be removed from HAProxy responses using the `deleteHeader` property. This is useful for removing headers that might reveal internal information or that you do not wish to forward.
270+
271+
Example configuration in your `custom-values.yaml` file:
272+
273+
```yaml
274+
networking:
275+
haproxy:
276+
deleteHeader:
277+
- X-Powered-By
278+
```

docs/deploy_dx/manage/cfg_dx_compose/configure_sso/integrating_leap_sso/index.md

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ This page provides information on how to configure the Single Sign-On (SSO) laye
44

55
## Enabling SSO between HCL Leap and HCL DX Compose in Kubernetes
66

7-
This guide shows how to enable SSO between HCL DX and HCL Leap. You can use the modern and natively supported OpenID Connect (OIDC) protocol since both applications run on Open Liberty. The protocol connects directly to the preferred Identity Provider (IdP), such as Azure AD, Keycloak or Okta. By configuring DX and Leap to trust your central IdP, users get a seamless, single log-in experience.
7+
This guide shows how you can enable SSO between HCL DX Compose and HCL Leap. You can use the modern and natively supported OpenID Connect (OIDC) protocol since both applications run on Open Liberty. The protocol connects directly to your preferred Identity Provider (IdP), such as Azure AD, Keycloak, Okta, or any OIDC-compliant provider. By configuring HCL DX Compose and Leap to trust your central IdP, users get a seamless, single log-in experience.
88

99
### Implementing OIDC SSO
1010

11-
1. Install and configure your IdP.
11+
1. Choose and configure your IdP.
1212

13-
Create a client for each product. IdPs will serve as the single point of truth for credential inputs.
13+
Create a client registration for each product (HCL DX Compose and HCL Leap). Your IdP serves as the single source of truth for credential input.
1414

1515
2. Enable OIDC in HCL DX.
1616

@@ -22,7 +22,7 @@ This guide shows how to enable SSO between HCL DX and HCL Leap. You can use the
2222

2323
1. Configure the OIDC IdP, which will serve as the OIDC provider.
2424

25-
As part of the configuration process for your identify provider, you will have created or obtained a digital certificate for configuring HTTPS. This certificate will also need to be deployed to Leap so that the two servers can communicate with each other.
25+
As part of the configuration process for your identity provider, create or obtain a digital certificate for HTTPS. Deploy this certificate to Leap so the two servers can communicate securely.
2626

2727
!!!note
2828
The SSL certificate (`.crt`) and public key (`.key`) should be in PKCS12 format.
@@ -39,7 +39,7 @@ This guide shows how to enable SSO between HCL DX and HCL Leap. You can use the
3939
configuration:
4040
leap:
4141
customCertificateSecrets:
42-
keycloakCert: <tls-secret>
42+
idpCert: <tls-secret>
4343
```
4444

4545
3. Add the OIDC definition as a server customization in the `values.yaml` file.
@@ -51,14 +51,13 @@ This guide shows how to enable SSO between HCL DX and HCL Leap. You can use the
5151
Example of an OIDC definition:
5252

5353
```yaml
54-
# Enter appropriate values for <your-oidc-id>, <your-client-id>, <your-client-secret>, <your-oidc-server>, <your-realm-name>.
55-
# You may have to refer to your identity provider's configuration.
54+
# Replace placeholder values with your actual OIDC configuration
5655
configuration:
5756
leap:
5857
configOverrideFiles:
5958
openIdConnect: |
6059
<server description="leapServer">
61-
<openidConnectClient id="<your-oidc-id>"
60+
<openidConnectClient id="<unique-oidc-id>"
6261
clientId="<your-client-id>"
6362
clientSecret="<your-client-secret>"
6463
signatureAlgorithm="RS256"
@@ -67,7 +66,7 @@ This guide shows how to enable SSO between HCL DX and HCL Leap. You can use the
6766
httpsRequired="true"
6867
scope="openid"
6968
userIdentityToCreateSubject="preferred_username"
70-
discoveryEndpointUrl="https://<your-oidc-server>/realms/<your-realm-name>/.well-known/openid-configuration">
69+
discoveryEndpointUrl="<your-discovery-endpoint-url>">
7170
</openidConnectClient>
7271
<authFilter id="interceptedAuthFilter">
7372
<requestUrl id="authRequestUrl" matchType="contains" urlPattern="/apps/secure|/apps/secured"/>
@@ -92,23 +91,21 @@ This guide shows how to enable SSO between HCL DX and HCL Leap. You can use the
9291

9392
- `userLookups`: Set this to `false` to disable user lookups, which is not available when configured with OIDC.
9493
- `userGroups`: Set this to `false` to disable group lookups, which is not available when configured with OIDC.
95-
- `postLogoutRedirectURL`: Set this to the URL to which Leap will redirect the browser after a user logs out. This is necessary to complete the loop with the OIDC IdP.
94+
- `postLogoutRedirectURL`: Set this to the URL where Leap redirects the browser after a user logs out. This setting completes the sign-out flow with the OIDC IdP. The URL format varies by IdP. For more information, refer to your IdP documentation.
9695

9796
```yaml
9897
configuration:
9998
leap:
10099
leapProperties: |
101100
ibm.nitro.NitroConfig.userLookup=false
102101
ibm.nitro.NitroConfig.userGroups=false
103-
ibm.nitro.LogoutServlet.postLogoutRedirectURL=https://myOIDCServer.com/realms/Leap/protocol/openid-connect/logout?client_id=hcl-leap-oidc-client&post_logout_redirect_uri=https://myLeapServer.com/apps/secure/org/ide/manager.html
102+
`ibm.nitro.LogoutServlet.postLogoutRedirectURL=<your-idp-logout-url>?client_id=<your-client-id>&post_logout_redirect_uri=<your-leap-url>`
104103
```
105104

106-
For more details on setting Leap properties, refer to [Leap properties](https://opensource.hcltechsw.com/leap-doc/latest/helm_leap_properties.html).
105+
For more information about setting Leap properties, see [Leap properties](https://opensource.hcltechsw.com/leap-doc/latest/helm_leap_properties.html).
107106

108107
5. Perform a Helm upgrade to apply your changes.
109108

110-
6. Restart the Leap pod. After restarting the Leap pod, accessing Leap should redirect you to authenticate using your OIDC IdP.
109+
6. Restart the Leap pod.
111110

112-
For example, the following screenshot shows an authentication page accessed using Keycloak:
113-
114-
![](../../../../../assets/Keycloak-Login.png)
111+
After restarting the Leap pod, accessing Leap should redirect you to authenticate using your OIDC IdP.

0 commit comments

Comments
 (0)