mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-08 11:19:36 +03:00
Use PAM module system [feature request] #1557
Closed
opened 2026-02-05 01:13:18 +03:00 by OVERLORD
·
6 comments
No Branch/Tag Specified
development
further_theme_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
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#1557
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 @kanlas-net on GitHub (Feb 26, 2020).
Idea:
I think it would be fine to use PAM as third party authentication application.
Benefits
RADIUS, LDAP and many other thirdparty auth systems can be used without implementing them in BookStack, OS deals with them by itself with appropriate pam module
@ssddanbrown commented on GitHub (Mar 4, 2020):
Thank you for the suggestion @kanlas-net. Unfortunately I would look to not include this feature for the following reasons:
Therefore I'm going to close this off as out-of-scope.
@interduo commented on GitHub (Jun 21, 2023):
Currently I use gdocs. I think about migrating to bookstack because of user management. Bookstack is createt not as a system for one-person but for group work - so the login process/user management should be consider as priority.
Check again that situation. Now - it's very easy to implement.
Example of authentication module - ready to use code - few lines only:
https://github.com/rohanbbb/php-radius-user-login/blob/master/userAuthenticate.php
"Implementing this would not replace the existing auth systems" - radius is supplement not necessity.
Radius is not OS-specific. (There are radius servers for Windows/FreeBSD)
As I remember correctly You don't need to use PAM module - for sure not at bookstack app side.
@ssddanbrown commented on GitHub (Jun 21, 2023):
@interduo My thoughts remain the same as three years ago, in that I would not look to expand our scope of support to additional authentication systems without significant value, and I don't see Radius as meeting that threshold since there's been little desire.
If handy with PHP, you may be able to hack on something basic using our logical theme system.
@interduo commented on GitHub (Jun 21, 2023):
The client is outside bookstack, loaded by composer - client is supported by other maintainers in other repository. On bookstack there would be only one line in composer.json and few lines in login code whitch would not change probbably during next many years. What kind of support You got on mind?
How do You measure that little desire? Centralized user management is everyday case that need to be discused, when software is implemented in institutions/company. What scope of auth types are supported by bookstack now? Radius is just most popular in linux.
Thanks for info - I will check that.
@ssddanbrown commented on GitHub (Jun 22, 2023):
Initial MVP implementation is rarely ever my concern for adding features. It's everything else.
I'd need to get familiar with these technologies, I'd need to have testing environments for this, we'd need to mock the core functions for testing, we'd have to update and re-test on changes, we'd have to document the usage of this; then, most significantly, we'd have to support user queries and requests. We'd have to debug when a user reports an issue, we'd have to re-test things when necessary. From experience, even when implementing fairly strong standards, variance and edge-cases always pop up and bring their complexities.
By your request being just the first for this, that I can remember, over the last 8 years. (The original issue opened here requests implementing PAM as a potential means for RADIUS, not for RADIUS itself).
We already support email+password/LDAP/SAML2/OIDC, in addition to secondary auth via some specific OAuth services.
@interduo commented on GitHub (Jun 22, 2023):
I didn't want to new open similar issue for that. Grouping informations in less issues in long term benefits.
If You start considering radius as big need and decide for implement it - feel free to contact me for a comprehensive testing. For now I will just use email+pass auth.
Thank You for Your time.