mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-06 00:59:39 +03:00
[Support Request]: Disable profile page for users with social login #2568
Closed
opened 2026-02-05 04:31:39 +03:00 by OVERLORD
·
7 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
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#2568
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 @androbey on GitHub (Jan 11, 2022).
Attempted Debugging
Searched GitHub Issues
Describe the Scenario
Hi all,
I implemented a custom Oauth2 Provider and used the Theme System for it.
This works very well.
However, I want to achieve that those users, who can login via Oauth2 (Social Login) are not able to edit their profile at all.
Goal is that those users can only login via the Oauth2 provider and not change their name, avatar and so on..
I don't think this is much related to e.g. #1090 as I still want login for certain users with email/password and those user's should be able to edit their profile.
As far as I can tell current state of Theme system does not provide a way to hook into the render process, does it? (So that I can conditionally throw "No Access error" if user has social login connected).
Exact BookStack Version
v21.12.1
Log Content
No response
PHP Version
8.0
Hosting Environment
Ubuntun 20.04 (VPS, manual installation)
@ssddanbrown commented on GitHub (Jan 11, 2022):
Hi @androbey,
Good to hear of someone successfully using the theme system!
The visual theme system allows override of any view used by BookStack so you could use that to modify the user edit page/view as required.
Alternatively, using the logical theme system, you could maybe use the before middleware hook to look for user updates and block them if the condition meets your requirement. As an example:
As with all advanced logical theme usage, you'll need to keep an eye on changes or test this upon large updates as the internal APIs & paths could change.
@androbey commented on GitHub (Jan 11, 2022):
Hi @ssddanbrown,
ok wow, this is amazing! Thank you very much, it works as expected.
Obviously the WEB_MIDDLEWARE_BEFORE event is very powerful. Sorry to bother with this issue, my bad. Obviously did not read ThemeEvents code comments enough.
@ssddanbrown commented on GitHub (Jan 11, 2022):
No bother at all, glad that helped!
@demlak commented on GitHub (Feb 24, 2025):
Hey.. i am interested in disabling profile-settings for my OIDC users.. is there any api-documentation for functions like
hasSocialAccount()for adapting this code?@ssddanbrown commented on GitHub (Feb 24, 2025):
@demlak No, not really, since it's just all internal code, not really a supported API of any type.
That specific function is just a method on the user model:
387c786768/app/Users/Models/User.php (L210-L225)@demlak commented on GitHub (Feb 24, 2025):
thx for this very fast reply =)
do you recommend a way of archiving my goal? maybe checking if
external_auth_idis set?in my case, i currently only have oidc users..
@ssddanbrown commented on GitHub (Feb 24, 2025):
@demlak I don't really understand what your goal is to be honest.
Feel free to open a new support issue, to fully describe what you're attempting to achieve (and what you've got/attempted so far).