| Products | Versions |
|---|---|
| TIBCO BPM Enterprise (formerly TIBCO ActiveMatrix BPM) | 5.x |
To enable SSL on the LDAP server used in the BPME 5.x, we need to provide the public certificate of the LDAP server to the BPME 5.x container application.
We need to provide the path of the certificate to the container using the environment variable "LDAP_<ldap alias name>_SSLCERT" for the corresponding group name of the LDAP server.
The certificate needs to be injected into the BPME container via the container volume mount based on the container platform used.
In the resolution section of this article, you will find the exact steps for Kubernetes and Docker.
Volume mount used to store the certificate file must have a different lifecycle than the container/pod, i.e, stopping deleting the container/pod shouldn't delete the volume ot its data.
All
Steps:
docker volume create <volume-name>docker volume create ldap-certsdocker run --rm -v <cert path in host server>/<certficate.file>:<temp location in container>/<certficate.file>:ro -v ldap-certs:<directory inside volume> <image-name> cp <temp location in container>/<certficate.file> <directory inside volume>/<certficate.file>docker run --rm -v /home/ompatil/openldap-certs/mycacert.pem:/tmp/mycacert.pem:ro -v ldap-certs:/etc/ldap/certs alpine cp /tmp/mycacert.pem /etc/ldap/certs/mycacert.pem cat < certificate.file> | base64cat cn_gasdseuomkarw05.ompatil.com.cer | base64apiVersion: v1
kind: Secret
metadata:
name: secret-name
namespace: bpm-msql
type: Opaque
data:
ldap.crt: <base64 of cert>
Example:apiVersion: v1
kind: Secret
metadata:
name: ldap-certificates
namespace: bpm-msql
type: Opaque
data:
ldap.crt: LS0tLS1CRUdJTiBDRVJ........Q0FURS0tLS0tCg==
kubectl apply -f bpm-ldap-cert.yamlspec:
containers:
- name: <container-name>
image: tibco/bpm/runtime:5.x.x
volumeMounts:
- name: <give your mount name>
mountPath: "<path of hte mount>"
.
.
volumes:
- name: <mount name given to the pod>
secret:
secretName: <certificate secret name>
Example:
spec:
containers:
- name: bpm
image: tibco/bpm/runtime:5.6.0
volumeMounts:
- name: ldap-cert-volume
mountPath: "/etc/ldap-certs"
.
.
volumes:
- name: ldap-cert-volume
secret:
secretName: ldap-certificates
LDAP_SYSTEM_ALIAS=System
LDAP_SYSTEM_URL=ldaps://ompatil:636/dc=ompatil
LDAP_SYSTEM_PRINCIPAL=uid=ompatil,ou=people,dc=ompatil
LDAP_SYSTEM_CREDENTIALS=Tibco2020
LDAP_SYSTEM_SSLCERT=/etc/ldap/mycacert.pem
env:
- name: JDBC_DRIVERCLASS
value: "com.microsoft.sqlserver.jdbc.SQLServerDriver"
- name: JDBC_URL
value: "jdbc:sqlserver://ompatil:1433;databaseName=bpm;encrypt=true;trustServerCertificate=true;"
- name: LDAP_SYSTEM_ALIAS
value: "System"
- name: LDAP_SYSTEM_URL
value: "ldaps://ompatil:636"
- name: LDAP_SYSTEM_SSLCERT
value: "/etc/ldap-certs/ldap.crt"
docker run -d -p 8181:8181 --name bpm --env-file ./db-server.env --env-file ./ldap.env -v <volume-name>:<cert path inside the container> bpme-image-namedocker run -d -p 8181:8181 --name bpm --env-file ./db-server.env --env-file ./ldap.env -v ldap-certs:/etc/ldap tibco/bpm/runtime:5.5.0kubectl apply -f bpm-deployment.yamlThis article illustrates the steps to configure the SSL or LDAPS protocol with the LDAP server used in the BPM 5.x.
LDAPS, SSL, BPM 5.x