Files
k8s-apps/openldap/self-service-passwords.yaml
2026-03-16 21:38:34 +00:00

145 lines
3.5 KiB
YAML

---
apiVersion: v1
kind: ConfigMap
metadata:
name: ssp-config
namespace: openldap
data:
config.inc.local.php: |
<?php
$debug = false;
$lang = "de";
$keyphrase = getenv('KEYPHRASE');
$ldap_url = "ldaps://ldap.undercloud.local:636";
$ldap_binddn = "cn=shodan,ou=users,dc=undercloud,dc=local";
$ldap_bindpw = getenv('LDAP_BINDPW');
$ldap_base = "dc=undercloud,dc=local";
$ldap_login_attribute = "uid";
$use_ssl = true;
$use_starttls = false;
$default_action = "change";
$use_change = true;
$use_sendtoken = false;
$show_menu = true;
$show_help = true;
# Enable Samba password updates
$who_change_password = "manager";
$samba_mode = true;
# Optional: also maintain Samba password age attributes
# $samba_options['min_age'] = 5;
# $samba_options['max_age'] = 45;
$messages["changehelpextramessage"] = "Bitte Benutzernamen und aktuelles Passwort eingeben.";
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: self-service-password
namespace: openldap
labels:
app: self-service-password
spec:
replicas: 1
selector:
matchLabels:
app: self-service-password
template:
metadata:
labels:
app: self-service-password
spec:
dnsConfig:
options:
- name: ndots
value: "1"
enableServiceLinks: false
containers:
- name: self-service-password
image: ltbproject/self-service-password:latest
imagePullPolicy: IfNotPresent
ports:
- name: http
containerPort: 80
protocol: TCP
env:
- name: LDAP_BINDPW
valueFrom:
secretKeyRef:
name: ssp-secrets
key: LDAP_BINDPW
- name: KEYPHRASE
valueFrom:
secretKeyRef:
name: ssp-secrets
key: KEYPHRASE
- name: LDAPTLS_CACERT
value: /etc/ssl/certs/undercloud-ca.pem
- name: LDAPTLS_REQCERT
value: demand
volumeMounts:
- name: ssp-config
mountPath: /var/www/conf/config.inc.local.php
subPath: config.inc.local.php
readOnly: true
- name: root-ca
mountPath: /etc/ssl/certs/undercloud-ca.pem
subPath: trust-bundle.pem
readOnly: true
readinessProbe:
httpGet:
path: /
port: http
initialDelaySeconds: 10
periodSeconds: 10
livenessProbe:
httpGet:
path: /
port: http
initialDelaySeconds: 30
periodSeconds: 20
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
cpu: 500m
memory: 512Mi
volumes:
- name: ssp-config
configMap:
name: ssp-config
items:
- key: config.inc.local.php
path: config.inc.local.php
- name: root-ca
configMap:
name: undercloud-ca-bundle
items:
- key: trust-bundle.pem
path: trust-bundle.pem
---
apiVersion: v1
kind: Service
metadata:
name: self-service-password
namespace: openldap
spec:
selector:
app: self-service-password
ports:
- name: http
port: 80
targetPort: http
protocol: TCP
type: ClusterIP