MXS-1220: Add HTTP BA authentication

The admin interface now supports Basic Access authentication. This is not
a secure method of authentication and it should not be used without
unencrypted connections.

Made the admin interface port, authentication, username and password
configurable.
This commit is contained in:
Markus Mäkelä
2017-04-18 13:18:31 +03:00
committed by Markus Mäkelä
parent d242203279
commit 52e0cc8e16
7 changed files with 88 additions and 13 deletions

View File

@ -11,6 +11,7 @@ requirements are as follows:
* Bison 2.7 or later
* Flex 2.5.35 or later
* libuuid
* libmicrohttpd
## Required packages
@ -30,7 +31,8 @@ You can install the packages with the following commands.
```
sudo yum install git gcc gcc-c++ ncurses-devel bison flex glibc-devel cmake \
libgcc perl make libtool openssl openssl-devel libcurl-devel pcre-devel \
tcl tcl-devel systemtap-sdt-devel libuuid libuuid-devel sqlite3 sqlite3-devel
tcl tcl-devel systemtap-sdt-devel libuuid libuuid-devel sqlite3 sqlite3-devel \
libmicrohttpd-devel
```
### Required packages on Ubuntu and Debian systems
@ -40,7 +42,7 @@ require other packages in addition to these.
```
git build-essential libssl-dev ncurses-dev bison flex cmake perl libtool \
libcurl4-openssl-dev libpcre3-dev tlc tcl-dev uuid uuid-dev sqlite3-dev
libcurl4-openssl-dev libpcre3-dev tlc tcl-dev uuid uuid-dev sqlite3-dev libmicrohttpd-dev
```
You can install the packages with the following command.
@ -48,7 +50,7 @@ You can install the packages with the following command.
```
sudo apt-get install git build-essential libssl-dev ncurses-dev bison flex \
cmake perl libtool libcurl4-openssl-dev libpcre3-dev tcl tcl-dev uuid \
uuid-dev libsqlite3-dev
uuid-dev libsqlite3-dev libmicrohttpd-dev
```
## Preparing the MariaDB MaxScale build

View File

@ -172,6 +172,29 @@ write or modify the data in the backend server. The default is 2 seconds.
auth_write_timeout=10
```
#### `admin_port`
The port where the HTTP admin interface listens on. The default value is port
8080.
#### `admin_auth`
Enable HTTP admin interface authentication using HTTP Basic Access
authentication. This is not a secure method of authentication but it does add a
small layer of security. This option id disabled by default.
#### `admin_user`
The HTTP admin interface username. This is the username which is used when
_admin_auth_ is enabled. The default user for the HTTP admin interface is
`admin`.
#### `admin_password`
The HTTP admin interface password. This is the which which is used when
_admin_auth_ is enabled. The default password for the HTTP admin interface is
`mariadb`.
#### `ms_timestamp`
Enable or disable the high precision timestamps in logfiles. Enabling this adds