Files
rustguac/Cargo.toml
T
Dave Kempe d07d79c4f2 Add Kerberos NLA support for RDP and credential prompting
- Patch guacd with Kerberos NLA support (002-kerberos-nla.patch),
  based on upstream GUACAMOLE-2057 PR #581, adapted for FreeRDP 3.x
- Add per-entry auth_pkg, kdc_url, and prompt_credentials settings
  to the address book (configurable in admin UI)
- Frontend credential prompt for entries without stored credentials
  or with prompt_credentials enabled (never stored, session-only)
- Wire auth-pkg, kdc-url, kerberos-cache params through rustguac
  to the guacd RDP handshake
- Comprehensive Kerberos NLA docs: krb5.conf setup, KDC discovery
  options, FQDN requirements, troubleshooting guide

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 10:39:18 +11:00

76 lines
1.6 KiB
TOML

[package]
name = "rustguac"
version = "0.2.2"
edition = "2021"
description = "Lightweight Rust replacement for Apache Guacamole client"
[dependencies]
# Web framework
axum = { version = "0.8", features = ["ws"] }
tower = "0.5"
tower-http = { version = "0.6", features = ["fs", "cors", "trace"] }
# Async runtime
tokio = { version = "1", features = ["full"] }
tokio-util = "0.7"
# Serialization
serde = { version = "1", features = ["derive"] }
serde_json = "1"
# Utilities
uuid = { version = "1", features = ["v4", "serde"] }
chrono = { version = "0.4", features = ["serde"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# Streaming
futures-util = "0.3"
# Config
toml = "0.9"
# Crypto/random
rand = "0.9"
hex = "0.4"
sha2 = "0.10"
# Database
rusqlite = { version = "0.38", features = ["bundled"] }
# CLI
clap = { version = "4", features = ["derive"] }
# IP matching
ipnetwork = "0.21"
# TLS
axum-server = { version = "0.8", features = ["tls-rustls"] }
rcgen = "0.14"
tokio-rustls = "0.26"
rustls = { version = "0.23", default-features = false, features = ["ring", "std", "tls12"] }
rustls-pemfile = "2"
# OIDC
openidconnect = "4"
url = "2"
tower-cookies = "0.11"
# SSH key generation
ssh-key = { version = "0.6", features = ["ed25519"] }
# Rate limiting
tower_governor = "0.8"
# Base64 decoding (JWT payload for OIDC groups)
base64 = "0.22"
# HTTP client (Vault API)
reqwest = { version = "0.12", features = ["json", "rustls-tls-webpki-roots"], default-features = false }
# LUKS drive management (uid/gid for chown)
libc = "0.2"
[build-dependencies]
pulldown-cmark = "0.13"