mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-05 00:29:48 +03:00
Local Linux account support #1160
Closed
opened 2026-02-05 00:06:33 +03:00 by OVERLORD
·
10 comments
No Branch/Tag Specified
development
l10n_development
further_theme_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
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#1160
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 @CorruptComputer on GitHub (Apr 27, 2019).
Describe the feature you'd like
I would like to be able to login as local users from the box that BookStack is running on. Disabling email service all together, and just using local usernames and passwords would be ideal for me. Another web application I use quite a bit is called Cockpit and it supports this out of the box.
Describe the benefits this feature would bring to BookStack users
Quick and easy setup for environments where SMTP is unavailable or where you would want to control access through Linux account groups.
Additional context
n/a
@ssddanbrown commented on GitHub (Apr 28, 2019):
Thanks for the suggestion @CorruptComputer.
Generally this is probably not something I'd be looking to add. I'd rather not add, support & maintain an additional authentication method, especially one that would be OS-specific and likely infrequently used.
Linux account authentication makes a lot of sense in a project like cockpit, where system users and app users will likely align due to the fundamental goal/features of cockpit, whereas in BookStack there is very little crossover between the roles of a user within BookStack and the role of a linux account.
Will leave this open to discussion though.
@CorruptComputer commented on GitHub (May 4, 2019):
@ssddanbrown As far as I have been able to tell BookStack only supports Linux to begin with, as the Installation documentation only shows support for Linux. So I don't think "OS-specific" code would hinder anything if this is only really supported on one OS to begin with.
This would also allow greater flexibility in not requiring email addresses and instead just allowing usernames to logon, which is something my organization would very much like.
@ssddanbrown commented on GitHub (May 4, 2019):
BookStack can run on pretty much any OS that'll run PHP7, It's just that we only have official install scripts for Ubuntu LTS releases since that'll be the most popular production target and I'm fairly confident with scripting Ubuntu.
I can see the use-case in this, Just don't think it'll be worth the effort in supporting it, as per my comment above.
@timoschwarzer commented on GitHub (May 6, 2019):
If you run BookStack inside a container environment like Docker, system user authentication makes no sense, too. Like @ssddanbrown said, Cockpit is focused on managing the system it runs on, therefore it makes sense to authenticate against the system user database. BookStack however is a web service and does not target a specific OS.
@CorruptComputer commented on GitHub (May 16, 2019):
I understand that it makes no sense for Docker. However when running it on a local server for documentation there is no SMTP available for email, nor is there LDAP available for user authentication. So this was just the easiest way I thought to implement this. Unless it was possible to just sign up users with usernames rather than email addresses.
@timoschwarzer commented on GitHub (May 16, 2019):
LDAP makes more sense to me.
https://github.com/Adldap2/Adldap2-Laravel
@ciphermenial commented on GitHub (Jun 12, 2019):
@CorruptComputer What is the value of adding this functionality? Is it even adding functionality or duplicating it? How many people will use it?
You can enter any email address for the username e.g. test@test.local and they can sign in with that. You don't need SMTP configured.
@CorruptComputer commented on GitHub (Jun 12, 2019):
I entirely understand how this isn't useful to many situations. But as I said in an environment with no SMTP or LDAP access it doesn't make sense to use email addresses for logon. I think usernames would be more appropriate, and with using usernames it would be nice to be able to use the accounts already provided by the system.
@CorruptComputer commented on GitHub (Jun 12, 2019):
This is not user friendly, nor is it intuitive to use.
A specific example as to why I think this is a good feature to have:
My company has a server setup, lets call it
dev-server. We have our development processes, software, and documentation all saved on that sever. Only people with access to logon to that server should be able to access the documentation stored there. Now if we want to make the process simpler and run a BookStack instance on that server for documentation rather than having text files everywhere, it makes sense to tie it to the accounts which have access to that server.@ssddanbrown commented on GitHub (Dec 10, 2020):
Since this feature request has had little further demand, and since it applies to auth which is an area that already consumes a lot of time, I'm going to close this off.
The efforts/discussion in #2223 might be of interest, since there's some discussion of auth based off of HTTP headers. Feel like there could possible be a simpler way to join local accounts with that, but I've not really explored that realm.