From 14256ac81618404a6da03ec7d353e1319525afda Mon Sep 17 00:00:00 2001 From: anima Date: Wed, 1 Oct 2025 18:00:06 +0200 Subject: [PATCH] add oidc module sql sheme --- README.md | 15 ++++++++ compose.yml | 1 + modules/oidc/sqlite.schema.sql | 65 ++++++++++++++++++++++++++++++++++ 3 files changed, 81 insertions(+) create mode 100644 modules/oidc/sqlite.schema.sql diff --git a/README.md b/README.md index 12b4c86..de09921 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,21 @@ mv env.sample .env # - API_ROOT_PASS # - ICINGA_API_ICINGAWEB_PASS nano .env # set your env +``` +setup reverse proxy here caddy +create a file `./files/Caddyfile` with content: +``` +mon.example.com { + reverse_proxy icingaweb2:8080 +} +graph.example.com { + reverse_proxy grafana:3000 +} +``` +... or unkomment port expose on grafana and icingaweb2 +... or use own reverse proxy + +``` docker compose up ``` diff --git a/compose.yml b/compose.yml index b1b6085..ed99308 100644 --- a/compose.yml +++ b/compose.yml @@ -118,6 +118,7 @@ services: volumes: - ./files/dbs/icingaweb_oidc:/var/lib/mysql - /etc/localtime:/etc/localtime:ro + - ./modules/oidc/:/docker-entrypoint-initdb.d networks: - icinga environment: diff --git a/modules/oidc/sqlite.schema.sql b/modules/oidc/sqlite.schema.sql new file mode 100644 index 0000000..8cc191c --- /dev/null +++ b/modules/oidc/sqlite.schema.sql @@ -0,0 +1,65 @@ +CREATE TABLE tbl_provider +( + id INTEGER PRIMARY KEY, + name TEXT, + url TEXT, + secret TEXT, + appname TEXT, + logo TEXT, + syncgroups TEXT DEFAULT NULL, + defaultgroup TEXT DEFAULT NULL, + required_groups TEXT DEFAULT NULL, + usernameblacklist TEXT DEFAULT NULL, + buttoncolor TEXT, + textcolor TEXT, + caption TEXT, + enabled TEXT, + ctime REAL, + mtime REAL +); + +CREATE TABLE tbl_user +( + id INTEGER PRIMARY KEY, + name TEXT, + email TEXT, + provider_id INTEGER, + mapped_local_user TEXT, + mapped_backend TEXT, + active INTEGER, + lastlogin REAL, + ctime REAL, + mtime REAL +); + +CREATE TABLE tbl_group +( + id INTEGER PRIMARY KEY, + name TEXT, + parent INTEGER, + provider_id INTEGER, + ctime REAL, + mtime REAL +); + +CREATE TABLE tbl_group_membership +( + id INTEGER PRIMARY KEY, + group_id INTEGER, + provider_id INTEGER, + username TEXT, + ctime REAL, + mtime REAL +); +CREATE TABLE tbl_schema +( + id INTEGER PRIMARY KEY, + version TEXT UNIQUE NOT NULL, + timestamp REAL NOT NULL, + success TEXT, + reason TEXT + +); + +INSERT INTO tbl_schema (version, timestamp, success, reason) +VALUES ('0.5.7', strftime('%s', 'now') * 1000, 'y', NULL); \ No newline at end of file