d22ef502ed
- Dateien nach Windmill-Naming-Konvention umbenannt (ssh-key_aus_db_testen, flow-fehler_per_nextcloud_talk_melden, bitwarden_(fallback)) - testpause-Schritt aus flow.yaml entfernt (Debugging abgeschlossen) - Neue Flows: f/Reporting/exchange_logins, f/Reporting/run_sql_events - mail_to_talk: Dateinamen nach Windmill-Konvention synchronisiert Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
92 lines
3.3 KiB
YAML
92 lines
3.3 KiB
YAML
summary: Exchange Logins Collector
|
|
description: >
|
|
Lädt alle aktiven EX-Server aus bronze.server, gleicht sie mit den
|
|
verbundenen rport.io Clients ab (per Hostname oder IP), fragt auf jedem
|
|
Server per PowerShell die AD-Gruppe G-Exchange-User ab (username ohne
|
|
E-Mail, lastlogon, ipaddress vom Server) und schreibt die Ergebnisse in
|
|
bronze.services.reporting.
|
|
value:
|
|
modules:
|
|
- id: find_ex_clients
|
|
summary: EX-Server mit rport.io Clients abgleichen
|
|
value:
|
|
type: rawscript
|
|
content: '!inline ex-server_mit_rport.io_clients_abgleichen.ts'
|
|
input_transforms:
|
|
database:
|
|
type: static
|
|
value: $res:u/sebastianserfling/fascinating_mysql
|
|
rportio_api_token:
|
|
type: static
|
|
value: $var:f/Reporting/rportio_api_token
|
|
rportio_base_url:
|
|
type: static
|
|
value: $var:f/Reporting/rportio_base_url
|
|
rportio_username:
|
|
type: static
|
|
value: $var:f/Reporting/rportio_username
|
|
lock: '!inline ex-server_mit_rport.io_clients_abgleichen.lock'
|
|
language: bun
|
|
- id: process_servers
|
|
summary: Pro Server Logins sammeln und speichern
|
|
value:
|
|
type: forloopflow
|
|
modules:
|
|
- id: execute_ps
|
|
summary: PowerShell via rport.io ausführen
|
|
value:
|
|
type: rawscript
|
|
content: '!inline powershell_via_rport.io_ausführen.ts'
|
|
input_transforms:
|
|
client_id:
|
|
type: javascript
|
|
expr: flow_input.iter.value.rport_client_id
|
|
rportio_api_token:
|
|
type: static
|
|
value: $var:f/Reporting/rportio_api_token
|
|
rportio_base_url:
|
|
type: static
|
|
value: $var:f/Reporting/rportio_base_url
|
|
rportio_username:
|
|
type: static
|
|
value: $var:f/Reporting/rportio_username
|
|
server_ip:
|
|
type: javascript
|
|
expr: flow_input.iter.value.ipaddress
|
|
lock: '!inline powershell_via_rport.io_ausführen.lock'
|
|
language: bun
|
|
- id: insert_logins
|
|
summary: Login-Einträge in MySQL speichern
|
|
value:
|
|
type: forloopflow
|
|
modules:
|
|
- id: insert_login
|
|
summary: Einzelnen Login-Eintrag einfügen
|
|
value:
|
|
type: rawscript
|
|
content: '!inline einzelnen_login-eintrag_einfügen.ts'
|
|
input_transforms:
|
|
database:
|
|
type: static
|
|
value: $res:u/sebastianserfling/fascinating_mysql
|
|
record:
|
|
type: javascript
|
|
expr: flow_input.iter.value
|
|
lock: '!inline einzelnen_login-eintrag_einfügen.lock'
|
|
language: bun
|
|
iterator:
|
|
type: javascript
|
|
expr: results.execute_ps
|
|
parallel: false
|
|
skip_failures: false
|
|
iterator:
|
|
type: javascript
|
|
expr: results.find_ex_clients
|
|
parallel: false
|
|
skip_failures: true
|
|
schema:
|
|
$schema: https://json-schema.org/draft/2019-09/schema
|
|
type: object
|
|
properties: {}
|
|
required: []
|