Browse Source

apache authenticates on DB

boyska 5 years ago
parent
commit
b23df82c75

+ 5 - 2
docker-compose.yml

@@ -56,11 +56,14 @@ services:
             - APACHE_SERVER_NAME=rss-bridge
 
     feedati-fe:
-        image: httpd:2.4-alpine
+        image: feedati/frontend
+        build:
+            context: .
+            dockerfile: ./docker/Dockerfile-frontend
         container_name: feedati_webserver
         volumes:
             - ./docker/frontend-apache.conf:/usr/local/apache2/conf/httpd.conf:ro
-            - ./docker/frontend-apache/:/etc/apache2/:ro
+            # - ./docker/frontend-apache/:/etc/apache2/:ro
             - ./docker/frontend-login/:/var/www/login/:ro
         ports:
             - 80:80

+ 5 - 0
docker/Dockerfile-frontend

@@ -0,0 +1,5 @@
+FROM httpd:2.4-alpine
+
+RUN apk --no-cache add apr-util-dbd_pgsql
+
+# vim: set ft=dockerfile:

+ 9 - 8
docker/frontend-apache.conf

@@ -16,8 +16,8 @@ LoadModule headers_module modules/mod_headers.so
 LoadModule proxy_module modules/mod_proxy.so
 LoadModule proxy_http_module modules/mod_proxy_http.so
 LoadModule unixd_module modules/mod_unixd.so
-LoadModule status_module modules/mod_status.so
-LoadModule autoindex_module modules/mod_autoindex.so
+#LoadModule status_module modules/mod_status.so
+#LoadModule autoindex_module modules/mod_autoindex.so
 LoadModule dir_module modules/mod_dir.so
 LoadModule alias_module modules/mod_alias.so
 
@@ -27,8 +27,8 @@ LoadModule session_cookie_module modules/mod_session_cookie.so
 LoadModule request_module modules/mod_request.so
 LoadModule authz_user_module modules/mod_authz_user.so
 LoadModule auth_form_module modules/mod_auth_form.so
-LoadModule authn_file_module modules/mod_authn_file.so
-# LoadModule authn_dbm_module modules/mod_authn_dbm.so
+LoadModule authn_dbd_module modules/mod_authn_dbd.so
+LoadModule dbd_module modules/mod_dbd.so
 
 LoadModule macro_module modules/mod_macro.so
 LoadModule rewrite_module modules/mod_rewrite.so
@@ -50,13 +50,14 @@ ServerAdmin you@example.com
 
 ServerName feedati-fe:80
 
+DBDriver pgsql
+DBDParams "host=db dbname=feeds user=apache password=apachepass"
+
 <Macro Auth>
     AuthFormLoginRequiredLocation "/login/"
-    AuthFormLoginRequiredLocation "/login/"
-    AuthFormProvider file
 # authn
-    AuthFormProvider file
-    AuthUserFile /etc/apache2/passwords.txt
+    AuthFormProvider dbd
+    AuthDBDUserPWQuery "SELECT password FROM users.users WHERE username = %s"
 # form
     AuthType form
     AuthName "authenticationform"

+ 0 - 1
docker/frontend-apache/passwords.txt

@@ -1 +0,0 @@
-admin:$2y$05$tPaBuT/mWQCvfk1C12PmV.0Dz8kt0cY1jcD53OGCN26Y8dX2kRPs.