Compare commits
2 Commits
bcc275236e
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| dd93ea5cca | |||
| 14256ac816 |
15
README.md
15
README.md
@@ -37,6 +37,21 @@ mv env.sample .env
|
|||||||
# - API_ROOT_PASS
|
# - API_ROOT_PASS
|
||||||
# - ICINGA_API_ICINGAWEB_PASS
|
# - ICINGA_API_ICINGAWEB_PASS
|
||||||
nano .env # set your env
|
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
|
docker compose up
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -118,6 +118,7 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- ./files/dbs/icingaweb_oidc:/var/lib/mysql
|
- ./files/dbs/icingaweb_oidc:/var/lib/mysql
|
||||||
- /etc/localtime:/etc/localtime:ro
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
- ./modules/oidc/:/docker-entrypoint-initdb.d
|
||||||
networks:
|
networks:
|
||||||
- icinga
|
- icinga
|
||||||
environment:
|
environment:
|
||||||
|
|||||||
90
modules/oidc/mysql.schema.sql
Normal file
90
modules/oidc/mysql.schema.sql
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
DROP TABLE IF EXISTS tbl_group_membership;
|
||||||
|
DROP TABLE IF EXISTS tbl_group;
|
||||||
|
DROP TABLE IF EXISTS tbl_user;
|
||||||
|
DROP TABLE IF EXISTS tbl_provider;
|
||||||
|
DROP TABLE IF EXISTS tbl_schema;
|
||||||
|
|
||||||
|
CREATE TABLE tbl_provider (
|
||||||
|
id int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
name varchar(255) NOT NULL,
|
||||||
|
url varchar(255) NOT NULL,
|
||||||
|
secret varchar(255) NOT NULL,
|
||||||
|
appname varchar(255) NOT NULL,
|
||||||
|
logo varchar(255) NOT NULL,
|
||||||
|
syncgroups LONGTEXT DEFAULT NULL,
|
||||||
|
defaultgroup TEXT DEFAULT NULL,
|
||||||
|
required_groups TEXT DEFAULT NULL,
|
||||||
|
nooidcgroups enum ('y', 'n') DEFAULT 'n' NOT NULL,
|
||||||
|
usernameblacklist TEXT DEFAULT NULL,
|
||||||
|
buttoncolor varchar(255) NOT NULL,
|
||||||
|
textcolor varchar(255) NOT NULL,
|
||||||
|
caption varchar(255) NOT NULL,
|
||||||
|
enforce_scheme_https enum ('y', 'n') DEFAULT 'n' NOT NULL,
|
||||||
|
enabled enum ('y', 'n') DEFAULT 'n' NOT NULL,
|
||||||
|
ctime bigint unsigned DEFAULT NULL,
|
||||||
|
mtime bigint unsigned DEFAULT NULL,
|
||||||
|
UNIQUE uq_oidc_provider_name (name) USING BTREE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||||
|
|
||||||
|
CREATE TABLE tbl_user (
|
||||||
|
id int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
name varchar(255) NOT NULL,
|
||||||
|
email varchar(255) DEFAULT NULL,
|
||||||
|
provider_id int(10) unsigned NOT NULL,
|
||||||
|
mapped_local_user varchar(255) DEFAULT NULL,
|
||||||
|
mapped_backend varchar(255) DEFAULT NULL,
|
||||||
|
active int(10) unsigned NOT NULL,
|
||||||
|
lastlogin bigint unsigned DEFAULT NULL,
|
||||||
|
ctime bigint unsigned DEFAULT NULL,
|
||||||
|
mtime bigint unsigned DEFAULT NULL,
|
||||||
|
UNIQUE uq_oidc_user_name (name) USING BTREE,
|
||||||
|
FOREIGN KEY (provider_id)
|
||||||
|
REFERENCES tbl_provider (id)
|
||||||
|
ON DELETE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||||
|
|
||||||
|
CREATE TABLE tbl_group (
|
||||||
|
id int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
name varchar(255) NOT NULL,
|
||||||
|
provider_id int(10) unsigned NOT NULL,
|
||||||
|
parent int(10) DEFAULT NULL,
|
||||||
|
ctime bigint unsigned DEFAULT NULL,
|
||||||
|
mtime bigint unsigned DEFAULT NULL,
|
||||||
|
UNIQUE uq_oidc_group_name (name) USING BTREE,
|
||||||
|
FOREIGN KEY (provider_id)
|
||||||
|
REFERENCES tbl_provider (id)
|
||||||
|
ON DELETE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||||
|
|
||||||
|
CREATE TABLE tbl_group_membership (
|
||||||
|
id int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
group_id int(10) unsigned NOT NULL,
|
||||||
|
provider_id int(10) unsigned NOT NULL,
|
||||||
|
username varchar(255) NOT NULL,
|
||||||
|
ctime bigint unsigned DEFAULT NULL,
|
||||||
|
mtime bigint unsigned DEFAULT NULL,
|
||||||
|
FOREIGN KEY (provider_id)
|
||||||
|
REFERENCES tbl_provider (id)
|
||||||
|
ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (group_id)
|
||||||
|
REFERENCES tbl_group (id)
|
||||||
|
ON DELETE CASCADE,
|
||||||
|
FOREIGN KEY (username)
|
||||||
|
REFERENCES tbl_user (name)
|
||||||
|
ON DELETE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||||
|
|
||||||
|
CREATE TABLE tbl_schema (
|
||||||
|
id int unsigned NOT NULL AUTO_INCREMENT,
|
||||||
|
version varchar(64) NOT NULL,
|
||||||
|
timestamp bigint unsigned NOT NULL,
|
||||||
|
success enum ('n', 'y') DEFAULT NULL,
|
||||||
|
reason text DEFAULT NULL,
|
||||||
|
|
||||||
|
PRIMARY KEY (id),
|
||||||
|
CONSTRAINT idx_tbl_schema_version UNIQUE (version)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin ROW_FORMAT=DYNAMIC;
|
||||||
|
|
||||||
|
|
||||||
|
INSERT INTO tbl_schema (version, timestamp, success, reason)
|
||||||
|
VALUES ('0.5.8', UNIX_TIMESTAMP() * 1000, 'y', NULL);
|
||||||
Reference in New Issue
Block a user