mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-05-09 08:25:54 +02:00
[GH-ISSUE #665] [Feature]: Cloud Profiles - Multiple Users [Maybe Bug?] #438
Labels
No labels
A1
automated
automated
bug
bug
Closed due to inactivity
contrib
dependencies
dependencies
duplicate
enhancement
feedback
hold
invalid
Notes
P1S
pull-request
security
ThumbsUp
user-report
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/bambuddy-maziggy-1#438
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
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 @cadtoolbox on GitHub (Mar 10, 2026).
Original GitHub issue: https://github.com/maziggy/bambuddy/issues/665
Originally assigned to: @maziggy on GitHub.
Problem or Use Case
Maybe I'm confused on how cloud profiles are supposed to work. If I sign-in to the cloud profiles tab as my own Bambu account, now every user using Bambuddy is shown as signed in as me. Is this the way it's supposed to work? I would have thought each user signs in using their own account.
If I give them Cloud Auth permission, they can sign out and sign-in as themselves but then I see their account now.
Do we need to create a generic Bambu account to use for everyone in Bambuddy or is this a bug?
I really just want to be able to use any filament currently loaded into all our printers in Bambu Studio with nozzle context properly set.
Proposed Solution
Either the documentation needs to explain how this works better or allow each user to sign-in as their own account.
Alternatives Considered
No response
Feature Category
Print Archiving
Priority
Nice to have
Mockups or Examples
No response
Contribution
Checklist
@maziggy commented on GitHub (Mar 12, 2026):
You're right, cloud credentials are currently stored globally (one Bambu Cloud account per Bambuddy instance), so when any user logs in, it overwrites the previous login for everyone.
This has been fixed in the next release. Each user now gets their own Bambu Cloud credentials stored on their user record. When you log into Bambu Cloud, it only affects your own session — other users keep theirs.
One open question: How should API keys handle cloud access?
API keys are used for automation/scripts and aren't tied to a specific user. With per-user cloud credentials, there's no obvious Bambu Cloud account to use when a request comes in via API key. Two options:
Does anyone here use API keys to access cloud endpoints (filament info, devices, firmware updates, etc.)? If so, option 2 would be important. Otherwise option 1 keeps things simple.
@maziggy commented on GitHub (Mar 12, 2026):
If you want to test, please use branch dev (which is btw the new global dev branch you can use for PR's).
@cadtoolbox commented on GitHub (Mar 12, 2026):
Keep it simple until someone complains ;)
@maziggy commented on GitHub (Mar 16, 2026):
Is it working for you?
@cadtoolbox commented on GitHub (Mar 16, 2026):
I have issues testing Bambu cloud login using my local test version:
This probably opens a can of worms but I'm posting it for some considerations.
The user is experiencing two related errors when trying to log into Bambu Cloud:
POST http://localhost:8000/api/v1/cloud/login 401 (Unauthorized)[backend.app.services.bambu_cloud] Login request failed: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1081)After analyzing the codebase, the issue is clear:
/api/v1/cloud/loginbackend/app/api/routes/cloud.pycallsBambuCloudService.login_request()BambuCloudServiceinbackend/app/services/bambu_cloud.pyuseshttpx.AsyncClient()with default SSL verificationhttps://api.bambulab.comBambuCloudAuthErrorwhich gets converted to a 401 HTTP responseRoot Cause
The
BambuCloudServiceclass creates anhttpx.AsyncClientwith default SSL verification settings. However, the local environment appears to have SSL certificate verification issues (possibly due to corporate firewalls, outdated certificate stores, or Python SSL configuration issues).Interestingly, other services in the codebase (
bambu_mqtt.py,bambu_ftp.py,camera.py) already disable SSL hostname verification for connecting to Bambu Lab devices, suggesting this is a known pattern in this codebase for Bambu Lab connectivity.Solution
Modify the
BambuCloudServiceclass inbackend/app/services/bambu_cloud.pyto disable SSL verification for connections to Bambu Lab's API servers. This follows the same pattern already established in other Bambu Lab services in the codebase.Implementation Plan
backend/app/services/bambu_cloud.pywhere the httpx client is createdverify=Falseparameter to disable SSL certificate verificationbambu_mqtt.py,bambu_ftp.py, andcamera.pyCritical Files
backend/app/services/bambu_cloud.py: Main fix location (line 38)Verification
Test the login flow:
Check logs:
Test complete authentication flow:
Notes
@cadtoolbox commented on GitHub (Mar 16, 2026):
@maziggy Regardless of all that... it works as expected now. Each user has their own Bambu login.
@maziggy commented on GitHub (Mar 17, 2026):
I don't think we should disable SSL verification for the cloud API connection.
The other services (bambu_mqtt.py, bambu_ftp.py, camera.py) disable SSL verification because they connect to local printer hardware using self-signed certificates — that's expected and necessary. The cloud API at api.bambulab.com has a valid public certificate, so SSL verification should work and should stay enabled since we're sending login credentials over that connection.
The CERTIFICATE_VERIFY_FAILED error is almost always a local environment issue — outdated CA certificate bundle, corporate firewall/proxy intercepting TLS, or Python not finding the system cert store. Common fixes: