mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-11 11:19:38 +03:00
Unknown column 'username' in 'where clause' - when switching from builtin to LDAP auth #5530
Closed
opened 2026-02-05 10:08:55 +03:00 by OVERLORD
·
1 comment
No Branch/Tag Specified
development
l10n_development
release
llm_only
vectors
v25-11
docker_env
drawio_rendering
user_permissions
ldap_host_failover
svg_image
prosemirror
captcha_example
fix/video-export
v25.12.3
v25.12.2
v25.12.1
v25.12
v25.11.6
v25.11.5
v25.11.4
v24.11.4
v25.11.3
v25.11.2
v25.11.1
v25.11
v25.07.3
v25.07.2
v25.07.1
v25.07
v25.05.2
v25.05.1
v25.05
v25.02.5
v25.02.4
v25.02.3
v25.02.2
v25.02.1
v25.02
v24.12.1
v24.12
v24.10.3
v24.10.2
v24.10.1
v24.10
v24.05.4
v24.05.3
v24.05.2
v24.05.1
v24.05
v24.02.3
v24.02.2
v24.02.1
v24.02
v23.12.3
v23.12.2
v23.12.1
v23.12
v23.10.4
v23.10.3
v23.10.2
v23.10.1
v23.10
v23.08.3
v23.08.2
v23.08.1
v23.08
v23.06.2
v23.06.1
v23.06
v23.05.2
v23.05.1
v23.05
v23.02.3
v23.02.2
v23.02.1
v23.02
v23.01.1
v23.01
v22.11.1
v22.11
v22.10.2
v22.10.1
v22.10
v22.09.1
v22.09
v22.07.3
v22.07.2
v22.07.1
v22.07
v22.06.2
v22.06.1
v22.06
v22.04.2
v22.04.1
v22.04
v22.03.1
v22.03
v22.02.3
v22.02.2
v22.02.1
v22.02
v21.12.5
v21.12.4
v21.12.3
v21.12.2
v21.12.1
v21.12
v21.11.3
v21.11.2
v21.11.1
v21.11
v21.10.3
v21.10.2
v21.10.1
v21.10
v21.08.6
v21.08.5
v21.08.4
v21.08.3
v21.08.2
v21.08.1
v21.08
v21.05.4
v21.05.3
v21.05.2
v21.05.1
v21.05
v21.04.6
v21.04.5
v21.04.4
v21.04.3
v21.04.2
v21.04.1
v21.04
v0.31.8
v0.31.7
v0.31.6
v0.31.5
v0.31.4
v0.31.3
v0.31.2
v0.31.1
v0.31.0
v0.30.7
v0.30.6
v0.30.5
v0.30.4
v0.30.3
v0.30.2
v0.30.1
v0.30.0
v0.29.3
v0.29.2
v0.29.1
v0.29.0
v0.28.3
v0.28.2
v0.28.1
v0.28.0
v0.27.5
v0.27.4
v0.27.3
v0.27.2
v0.27.1
v0.27
v0.26.4
v0.26.3
v0.26.2
v0.26.1
v0.26.0
v0.25.5
v0.25.4
v0.25.3
v0.25.2
v0.25.1
v0.25.0
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.2
v0.23.1
v0.23.0
v0.22.0
v0.21.0
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.0
v0.18.5
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.0
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.15.3
v0.15.2
v0.15.1
v0.15.0
v0.14.3
v0.14.2
v0.14.1
v0.14.0
v0.13.1
v0.13.0
v0.12.2
v0.12.1
v0.12.0
v0.11.2
v0.11.1
v0.11.0
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.6
v0.7.5
v0.7.4
v0.7.3
0.7.2
v.0.7.1
v0.7.0
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.0
Labels
Clear labels
🎨 Design
📖 Docs Update
🐛 Bug
🐛 Bug
:cat2:🐈 Possible duplicate
💿 Database
☕ Open to discussion
💻 Front-End
🐕 Support
🚪 Authentication
🌍 Translations
🔌 API Task
🏭 Back-End
⛲ Upstream
🔨 Feature Request
🛠️ Enhancement
🛠️ Enhancement
🛠️ Enhancement
❤️ Happy feedback
🔒 Security
🔍 Pending Validation
💆 UX
📝 WYSIWYG Editor
🌔 Out of scope
🔩 API Request
:octocat: Admin/Meta
🖌️ View Customization
❓ Question
🚀 Priority
🛡️ Blocked
🚚 Export System
♿ A11y
🔧 Maintenance
> Markdown Editor
pull-request
Mirrored from GitHub Pull Request
No Label
🐕 Support
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#5530
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @pnwAlex on GitHub (Dec 3, 2025).
Attempted Debugging
Searched GitHub Issues
Describe the Scenario
Hi, I have set up Bookstack on a Ubuntu Linux 20.04LTS server, fully updated, using built-in Bookstack authentication. I read through the LDAP configuration page as well as Dan's LDAP setup video. I created a few Bookstack users, and included their LDAP usernames in the "External Authentication ID" field in their profile.
I then modified the .env file (included below) to enable LDAP authentication, and restarted Apache. Here's my .env (anonymized passwords etc):
APP_DEBUG=true
APP_ENV=production
APP_KEY=base64:xxxxxxxxxxxxxxxxxxx=
APP_URL=https://bookstack.samdom.tld
APP_TIMEZONE=America/Chicago
AUTH_METHOD=ldap
AUTH_AUTO_INITIATE=true
LDAP_SERVER=adsrv01.samdom.tld:389
LDAP_BASE_DN="DC=samdom,DC=tld"
LDAP_DN="bookstack@samdom.tld"
LDAP_PASS="password"
LDAP_USER_FILTER=(&(sAMAccountName={user}))
LDAP_VERSION=3
LDAP_ID_ATTRIBUTE=BIN;objectGUID
LDAP_EMAIL_ATTRIBUTE=mail
LDAP_DISPLAY_NAME_ATTRIBUTE=displayName
LDAP_THUMBNAIL_ATTRIBUTE=jpegphoto
LDAP_START_TLS=true
LDAP_TLS_INSECURE=true
LDAP_USER_TO_GROUPS=true
LDAP_GROUP_ATTRIBUTE="memberOf"
LDAP_REMOVE_FROM_GROUPS=false
DB_HOST=localhost
DB_DATABASE=bookstack
DB_USERNAME=bookstack
DB_PASSWORD="password"
MAIL_DRIVER=smtp
MAIL_FROM_NAME="My BookStack"
MAIL_FROM=noreply@samtom.tld
MAIL_HOST=mail.samdom.tld
MAIL_PORT=587
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=tls
EXPORT_PAGE_SIZE=letter
LOG_FAILED_LOGIN_MESSAGE="Login failed for %u"
When I try to login with the username set in "External Auth ID" for one of the users I created in Bookstack, with the corresponding LDAP user password, I get the following error in the laravel.log file (included in log content section)
Extra commands showing artisan migrate status, and clearing caches...
root@bookstack:/var/www/bookstack# php artisan migrate
APPLICATION IN PRODUCTION. ┌ Are you sure you want to run this command? ──────────────────┐
│ Yes │
└──────────────────────────────────────────────────────────────┘
INFO Nothing to migrate.
root@bookstack:/var/www/bookstack# php artisan cache:clear
INFO Application cache cleared successfully.
root@bookstack:/var/www/bookstack# php artisan config:clear
INFO Configuration cache cleared successfully.
root@bookstack:/var/www/bookstack# php artisan view:clear
INFO Compiled views cleared successfully.
root@bookstack:/var/www/bookstack# systemctl restart apache2
Exact BookStack Version
v25.11.4
Log Content
Hosting Environment
root@bookstack:/var/www/bookstack# lsb_release -a
Distributor ID: Ubuntu
Description: Ubuntu 20.04.6 LTS
Release: 20.04
Codename: focal
root@bookstack:/var/www/bookstack# apachectl -v
Server version: Apache/2.4.41 (Ubuntu)
Server built: 2025-08-04T11:21:10
root@bookstack:/var/www/bookstack# php --version
PHP 8.4.7 (cli) (built: May 9 2025 06:53:45) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.4.7, Copyright (c) Zend Technologies
with Zend OPcache v8.4.7, Copyright (c), by Zend Technologies
@pnwAlex commented on GitHub (Dec 3, 2025):
I figured out my mistake, I had previously set up an older version of BookStack and had done the 'composer update --no-dev' step, but I didn't realize after I did an update with git checkout v25.11.4, I needed to run composer update --no-dev again (looks like Git had wiped out that step during the branch checkout).
After composer was done updating, I restarted apache, and this time in laravel.log, instead of the cryptic missing column error, it told me the php-ldap module was not installed / enabled. Installing php-ldap, restarted apache2, and now LDAP logins are working correctly.
Thanks