Added env DISABLE_LOGIN in order to support 3rd party authentication #30

This commit is contained in:
Marc Ole Bulling
2021-12-01 22:25:33 +01:00
parent 30526a4caa
commit d88a3cdd1e
10 changed files with 129 additions and 44 deletions

View File

@@ -60,39 +60,41 @@ General
--------
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| Name | Action | Persistent* | Default | Required for unattended setup |
+=====================+======================================================================================+=============+===================================+===============================+
| GOKAPI_CONFIG_DIR | Sets the directory for the config file | No | config | No |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_CONFIG_FILE | Sets the name of the config file | No | config.json | No |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_DATA_DIR | Sets the directory for the data | Yes | data | No |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_USERNAME | Sets the admin username | Yes | unset | Yes |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_PASSWORD | Sets the admin password | Yes | unset | Yes |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_PORT | Sets the server port | Yes | 53842 | Yes |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_EXTERNAL_URL | Sets the external URL where Gokapi can be reached | Yes | unset | Yes |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_REDIRECT_URL | Sets the external URL where Gokapi will redirect to the index page is accesses | Yes | unset | Yes |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_LOCALHOST | Bind server to localhost. Expects true/false/yes/no, always false for Docker images | Yes | false for Docker, otherwise unset | Yes |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_SALT_FILES | Sets the salt for the file password hashes | Yes | random salt | Yes |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_USE_SSL | Serve all content through HTTPS and generate certificates. Expects true/false/yes/no | Yes | unset | Yes |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_SALT_ADMIN | Sets the salt for the admin password hash | Yes | random salt | No |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_SALT_FILES | Sets the salt for the file password hashes | Yes | random salt | No |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_LENGTH_ID | Sets the length of the download IDs. Value needs to be 5 or more | Yes | 15 | No |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_MAX_FILESIZE | Sets the maximum allowed file size in MB | Yes | 102400 (100GB) | No |
+---------------------+--------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| Name | Action | Persistent* | Default | Required for unattended setup |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_CONFIG_DIR | Sets the directory for the config file | No | config | No |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_CONFIG_FILE | Sets the name of the config file | No | config.json | No |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_DATA_DIR | Sets the directory for the data | Yes | data | No |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_USERNAME | Sets the admin username | Yes | unset | Yes |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_PASSWORD | Sets the admin password | Yes | unset | Yes |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_PORT | Sets the server port | Yes | 53842 | Yes |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_EXTERNAL_URL | Sets the external URL where Gokapi can be reached | Yes | unset | Yes |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_REDIRECT_URL | Sets the external URL where Gokapi will redirect to the index page is accesses | Yes | unset | Yes |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_LOCALHOST | Bind server to localhost. Expects true/false/yes/no, always false for Docker images | Yes | false for Docker, otherwise unset | Yes |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_SALT_FILES | Sets the salt for the file password hashes | Yes | random salt | Yes |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_USE_SSL | Serve all content through HTTPS and generate certificates. Expects true/false/yes/no | Yes | unset | Yes |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_SALT_ADMIN | Sets the salt for the admin password hash | Yes | random salt | No |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_SALT_FILES | Sets the salt for the file password hashes | Yes | random salt | No |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_LENGTH_ID | Sets the length of the download IDs. Value needs to be 5 or more | Yes | 15 | No |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_MAX_FILESIZE | Sets the maximum allowed file size in MB | Yes | 102400 (100GB) | No |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
| GOKAPI_DISABLE_LOGIN | Disables login for admin menu. DO NOT USE unless you have a 3rd party authentication for the ``/admin`` URL! | Yes | false | No |
+----------------------+----------------------------------------------------------------------------------------------------------+-------------+-----------------------------------+-------------------------------+
\*Variables that are persistent must be submitted during the first start when Gokapi creates a new config file. They can be omitted afterwards. Non-persistent variables need to be set on every start.
@@ -116,6 +118,13 @@ All values that are described in :ref:`cloudstorage` can be passed as environmen
+-----------------------+-------------------------+
External Authentication
------------------------
In order to use external authentication (eg. services like Authelia or Authentik), set the environment variable ``GOKAPI_DISABLE_LOGIN`` to ``true`` on the first start. *Warning:* This will diasable authentication for the admin menu, which can be dangerous if not set up correctly!
Refer to the documention of your reverse proxy on how to protect the ``/admin`` URL, as authentication is only required for this URL.
.. _api:
********************************

View File

@@ -8,6 +8,22 @@ Overview of all Changes
-----------------------
v1.3.1: 03 Jul 2021
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
* Default upload limit is now 100GB and can be changed with environment variables on first start
* Fixed upload not working when using suburl on webserver for Gokapi
* Added log file
* Minor performance increase
v1.3.0: 17 May 2021
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
* Added cloudstorage support (AWS S3 / Backblaze B2)
* After changing password, all sessions will be logged out
* Fixed terminal input on Windows
* Added SSL support
* Documentation now hosted on ReadTheDocs
v1.2.0: 07 May 2021
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -59,4 +75,8 @@ v1.0: 12 Mar 2021
Upgrading
-----------------------
See TODO for upgrade instructions
Upgrading to 1.3
^^^^^^^^^^^^^^^^^^
* If you would like to use native SSL, please pass the environment variable ``GOKAPI_USE_SSL`` on first start after the update or manually edit the configuration file
* AWS S3 and Backblaze B2 can now be used instead of local storage! Please refer to the documentation on how to set it up.