- Add OpenLDAP deployment with persistent storage - Configure OpenCloud to use external LDAP for user/group storage - Exclude internal IDM service (using external LDAP instead) - Keep Pocket ID OIDC for authentication - Add LDAP directory initialization structure - Add comprehensive deployment guide Architecture: - External OpenLDAP (ldap://openldap.opencloud.svc:389) - Pocket ID OIDC (https://auth.basicstack.de) - Auto-provision users on first OIDC login to LDAP - Users: ou=users,dc=basicstack,dc=de - Groups: ou=groups,dc=basicstack,dc=de Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
37 lines
1.2 KiB
Text
37 lines
1.2 KiB
Text
# OpenLDAP Directory Structure Initialization
|
|
# This LDIF creates the organizational units needed by OpenCloud
|
|
#
|
|
# Apply with:
|
|
# kubectl exec -n opencloud deployment/openldap -- \
|
|
# ldapadd -x -D "cn=admin,dc=basicstack,dc=de" -w <admin-password> -f /tmp/init-structure.ldif
|
|
#
|
|
# Or copy to pod and apply:
|
|
# kubectl cp ldap-init-structure.ldif opencloud/openldap-<pod-id>:/tmp/init-structure.ldif
|
|
# kubectl exec -n opencloud openldap-<pod-id> -- \
|
|
# ldapadd -x -D "cn=admin,dc=basicstack,dc=de" -w <admin-password> -f /tmp/init-structure.ldif
|
|
|
|
# Create Users Organizational Unit
|
|
dn: ou=users,dc=basicstack,dc=de
|
|
objectClass: organizationalUnit
|
|
ou: users
|
|
description: OpenCloud Users
|
|
|
|
# Create Groups Organizational Unit
|
|
dn: ou=groups,dc=basicstack,dc=de
|
|
objectClass: organizationalUnit
|
|
ou: groups
|
|
description: OpenCloud Groups
|
|
|
|
# Example: Create default user group
|
|
dn: cn=opencloudUsers,ou=groups,dc=basicstack,dc=de
|
|
objectClass: groupOfNames
|
|
cn: opencloudUsers
|
|
description: Default OpenCloud Users Group
|
|
member: cn=admin,dc=basicstack,dc=de
|
|
|
|
# Example: Create admin group
|
|
dn: cn=opencloudAdmins,ou=groups,dc=basicstack,dc=de
|
|
objectClass: groupOfNames
|
|
cn: opencloudAdmins
|
|
description: OpenCloud Administrators
|
|
member: cn=admin,dc=basicstack,dc=de
|