63 lines
1.4 KiB
Markdown
63 lines
1.4 KiB
Markdown
|
|
# OpusR-Client
|
||
|
|
|
||
|
|
Rust CLI-Client für opusR Monitor — z/OS RACF Security Analysis.
|
||
|
|
|
||
|
|
Verbindet sich direkt per HTTPS mit DB2 Native REST Services auf z/OS.
|
||
|
|
Keine Middleware, keine Java, keine zusätzliche Software beim Kunden.
|
||
|
|
|
||
|
|
## Quick Start
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Tabellenliste
|
||
|
|
opusr --host 10.1.1.2 tables
|
||
|
|
|
||
|
|
# Spalten einer Tabelle
|
||
|
|
opusr --host 10.1.1.2 columns DSBD
|
||
|
|
|
||
|
|
# Daten abfragen mit Filter
|
||
|
|
opusr --host 10.1.1.2 query DSBD -f "OWNER=IBMUSER" --limit 50
|
||
|
|
|
||
|
|
# JSON-Ausgabe
|
||
|
|
opusr --host 10.1.1.2 --output json tables
|
||
|
|
```
|
||
|
|
|
||
|
|
## Build
|
||
|
|
|
||
|
|
```bash
|
||
|
|
cargo build --release
|
||
|
|
```
|
||
|
|
|
||
|
|
Binary: `target/release/opusr-client` (bzw. `.exe` auf Windows)
|
||
|
|
|
||
|
|
## Gitea Repository einrichten
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# 1. Neues Repo auf Gitea erstellen (im Browser):
|
||
|
|
# https://iws.opus-it.at/opus/opusr-client
|
||
|
|
|
||
|
|
# 2. Lokales Repo initialisieren:
|
||
|
|
cd opusr-client
|
||
|
|
git init
|
||
|
|
git add .
|
||
|
|
git commit -m "Initial: Rust CLI client for opusR Monitor"
|
||
|
|
|
||
|
|
# 3. Remote setzen und pushen:
|
||
|
|
git remote add origin https://iws.opus-it.at/opus/opusr-client.git
|
||
|
|
git push -u origin main
|
||
|
|
```
|
||
|
|
|
||
|
|
## Architektur
|
||
|
|
|
||
|
|
```
|
||
|
|
Browser/TUI → HTTPS → z/OS DB2 DDF (Native REST) → opusR DB2 Tables
|
||
|
|
↑
|
||
|
|
PassTicket Auth (Phase 2)
|
||
|
|
```
|
||
|
|
|
||
|
|
## Sicherheit
|
||
|
|
|
||
|
|
- TLS mandatory, Zertifikatvalidierung aktiv
|
||
|
|
- Passwords nie auf Disk, nie im Log (SecretString + Zeroize)
|
||
|
|
- PassTicket-basierte Auth (Phase 2): 10-min Token, Einmalverwendung
|
||
|
|
- Siehe [docs/security.md](docs/security.md)
|