This custom node uses a simple password to protect ComfyUI.
Please be aware that absolute security does not exist. This login node offers only basic protection for ComfyUI. Use it at your own risk.
With that in mind, here is a freshly installed ComfyUI instance with ComfyUI-Login on a new Linux system with an RTX 4090 GPU:
http://219.135.230.151:56784/login
If you find a way to compromise it, please let me know. I'll address the issue and share the server with you.
To install this node, you have two options:
-
In the directory
ComfyUI/custom_nodes/, git clone this repo, and dopip install -r requirements.txtin the repo's directory. -
Use ComfyUI-Manager.
For your first login, you may choose any password. This password will be encrypted and
stored in a file named PASSWORD within the <ComfyUI project folder>/login folder.
If you forget your password, you can reset it by deleting the PASSWORD file found in
the <ComfyUI project folder>/login folder. After doing this, you will be able to log
in again using a new password of your choice.
To disable the login feature, you can either:
-
Manually delete the ComfyUI-Login folder located in the
ComfyUI/custom_nodes/directory. Then, restart ComfyUI for the changes to take effect. -
Use the ComfyUI-Manager to uninstall it.
ComfyUI-Login also protects the server from unauthorized API calls.
You can find your token in your console (command line window) if you have set your password. It'll look like this:
For direct API calls, use token=$2b...
You have two options to validate your call:
-
Add an additional argument
token. An example can be found in./script_examples/websockets_api_example.py. -
Add an Authorization Bearer header. An example can be found in
./script_examples/free_memory.sh
Feel free to modify login.html if you want to personalize your login page.
This is removed due to confliction with the latest version of ComfyUI.
The browser will send a /free POST request to the server when the user is leaving, logging out, or refreshing the page.
This is handled purely in JavaScript. If you prefer not to use this feature, simply delete the file js/free_memory.js.
If you place a GUEST_MODE file in the ./login/ folder alongside the PASSWORD file, you can activate the experimental guest mode on the login page. This mode allows anonymous guests to use your ComfyUI to generate images, but they won't be able to change any settings or install new custom nodes.
Utilizing this guest mode enables researchers to demonstrate their new methods using ComfyUI without concern that the system will be altered by guests.
This Guest Mode is still a WIP, and should be used with caution.



