mirror of
				https://github.com/kevinveenbirkenbach/computer-playbook.git
				synced 2025-10-31 18:29:21 +00:00 
			
		
		
		
	config(ports): add Nextcloud websocket port (4003); canonical domains (nextcloud/talk/whiteboard) refactor: unify get_app_conf usage & Jinja spacing; migrate paths/handlers to new NEXTCLOUD_* vars feat(plugins): split plugin routines; configure Whiteboard via occ (URL + JWT) fix(oidc): use NEXTCLOUD_URL for logout; correct LDAP attribute mappings; add OIDC flavor switch feat: Whiteboard container & reverse-proxy location; Talk STUN/WS ports; Redis URL for Whiteboard chore: drop obsolete TODO; minor cleanups in oauth2-proxy, matrix, peertube, pgadmin, phpldapadmin, pixelfed, phpmyadmin security(schema): Bluesky jwt_secret now base64_prefixed_32; add Nextcloud whiteboard_jwt_secret db: normalize postgres image tag templating; central DB host checks spacing fixes ops: add full-stack bootstrap (certs, proxy, volumes); internal nginx config reload handler update refs: https://chatgpt.com/share/68b5f5b7-8d64-800f-b001-1241f818dc0e
		
			
				
	
	
		
			49 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Django/Jinja
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Django/Jinja
		
	
	
	
	
	
|  {
 | |
|   "name": "{{ applications | get_app_conf(application_id, 'scopes.nextcloud') }}",
 | |
|   "description": "Optimized mappers for nextcloud oidc_login with ldap.",
 | |
|   "protocol": "openid-connect",
 | |
|   "attributes": {
 | |
|     "include.in.token.scope": "false",
 | |
|     "display.on.consent.screen": "true",
 | |
|     "gui.order": "",
 | |
|     "consent.screen.text": ""
 | |
|   },
 | |
|   "protocolMappers": [
 | |
|     {
 | |
|       "name": "{{ LDAP.USER.ATTRIBUTES.NEXTCLOUD_QUOTA }}",
 | |
|       "protocol": "openid-connect",
 | |
|       "protocolMapper": "oidc-usermodel-attribute-mapper",
 | |
|       "consentRequired": false,
 | |
|       "config": {
 | |
|         "aggregate.attrs": "false",
 | |
|         "introspection.token.claim": "true",
 | |
|         "multivalued": "false",
 | |
|         "userinfo.token.claim": "true",
 | |
|         "user.attribute": "{{ LDAP.USER.ATTRIBUTES.NEXTCLOUD_QUOTA }}",
 | |
|         "id.token.claim": "true",
 | |
|         "lightweight.claim": "false",
 | |
|         "access.token.claim": "true",
 | |
|         "claim.name": "{{ LDAP.USER.ATTRIBUTES.NEXTCLOUD_QUOTA }}",
 | |
|         "jsonType.label": "int"
 | |
|       }
 | |
|     },
 | |
|     {
 | |
|       "name": "UID Mapper",
 | |
|       "protocol": "openid-connect",
 | |
|       "protocolMapper": "oidc-usermodel-attribute-mapper",
 | |
|       "consentRequired": false,
 | |
|       "config": {
 | |
|         "aggregate.attrs": "false",
 | |
|         "introspection.token.claim": "true",
 | |
|         "multivalued": "false",
 | |
|         "userinfo.token.claim": "true",
 | |
|         "user.attribute": "username",
 | |
|         "id.token.claim": "true",
 | |
|         "lightweight.claim": "false",
 | |
|         "access.token.claim": "true",
 | |
|         "claim.name": "{{ LDAP.USER.ATTRIBUTES.ID }}",
 | |
|         "jsonType.label": "String"
 | |
|       }
 | |
|     }
 | |
|   ]
 | |
| } |