diff options
author | Ju1-js <40339350+Ju1-js@users.noreply.github.com> | 2023-01-28 06:43:10 +0000 |
---|---|---|
committer | Ju1-js <40339350+Ju1-js@users.noreply.github.com> | 2023-01-28 06:43:10 +0000 |
commit | dc25a31d1a3816a7fb0cd5ef186559b3c085db43 (patch) | |
tree | ac3af27c921fa11545fe78d4c71c0b089a57583f | |
parent | ce72af87d3b05c946bc82033786fc340f1c20512 (diff) | |
download | stable-diffusion-webui-gfx803-dc25a31d1a3816a7fb0cd5ef186559b3c085db43.tar.gz stable-diffusion-webui-gfx803-dc25a31d1a3816a7fb0cd5ef186559b3c085db43.tar.bz2 stable-diffusion-webui-gfx803-dc25a31d1a3816a7fb0cd5ef186559b3c085db43.zip |
Gradio Auth Read from External File
Usage: `--gradio-auth-path {PATH}`
It adds the credentials to the already existing `--gradio-auth` credentials. It can also handle line breaks.
The file should look like:
`{u1}:{p1},{u2}:{p2}`
or
```
{u1}:{p1},
{u2}:{p2}
```
Will gradio handle duplicate credentials if it happens?
-rw-r--r-- | modules/shared.py | 1 | ||||
-rw-r--r-- | webui.py | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/modules/shared.py b/modules/shared.py index 474fcc42..36e9762f 100644 --- a/modules/shared.py +++ b/modules/shared.py @@ -81,6 +81,7 @@ parser.add_argument("--freeze-settings", action='store_true', help="disable edit parser.add_argument("--ui-settings-file", type=str, help="filename to use for ui settings", default=os.path.join(data_path, 'config.json'))
parser.add_argument("--gradio-debug", action='store_true', help="launch gradio with --debug option")
parser.add_argument("--gradio-auth", type=str, help='set gradio authentication like "username:password"; or comma-delimit multiple like "u1:p1,u2:p2,u3:p3"', default=None)
+parser.add_argument("--gradio-auth-path", type=str, help='set gradio authentication file path ex. "/path/to/auth/file" same auth format as --gradio-auth', default=None)
parser.add_argument("--gradio-img2img-tool", type=str, help='does not do anything')
parser.add_argument("--gradio-inpaint-tool", type=str, help="does not do anything")
parser.add_argument("--opt-channelslast", action='store_true', help="change memory type for stable diffusion to channels last")
@@ -205,7 +205,7 @@ def webui(): ssl_keyfile=cmd_opts.tls_keyfile,
ssl_certfile=cmd_opts.tls_certfile,
debug=cmd_opts.gradio_debug,
- auth=[tuple(cred.split(':')) for cred in cmd_opts.gradio_auth.strip('"').split(',')] if cmd_opts.gradio_auth else None,
+ auth=[tuple(cred.split(':')) for cred in (cmd_opts.gradio_auth.strip('"').replace('\n','').split(',') + (open(cmd_opts.gradio_auth_path, 'r').read().strip().replace('\n','').split(',') if cmd_opts.gradio_auth_path and os.path.exists(cmd_opts.gradio_auth_path) else None))] if cmd_opts.gradio_auth or (cmd_opts.gradio_auth_path and os.path.exists(cmd_opts.gradio_auth_path)) else None,
inbrowser=cmd_opts.autolaunch,
prevent_thread_lock=True
)
|