Rust
Verifizieren Sie Syncanix-Agent-Intents in Rust — Axum, Actix Web und Tower — mit einer lokalen HMAC-Prüfung bei jedem Tool-Aufruf.
Das Rust-SDK stellt Extraktoren und Layer für Axum, Actix Web und Tower über einem gemeinsamen Verify-Kern bereit. Der Extraktor verifiziert den Header und weist Fehlschläge mit 403 ab, bevor Ihr Handler läuft.
Installation
Fügen Sie das Paket mit dem Paketmanager Ihrer Sprache zu Ihrem Projekt hinzu.
cargo add syncanix-sdk-rustDas Secret konfigurieren
Das SDK verifiziert Intents mit dem Intent-Signing-Secret Ihres Tenants. Hinterlegen Sie es als Umgebungsvariable — niemals in die Versionsverwaltung einchecken — und laden Sie es dort, wo Sie das SDK registrieren.
export SYNCANIX_INTENT_SECRET="your-intent-signing-secret"Intents verifizieren
Registrieren Sie das SDK auf den Routen, die Agent-Aktionen bereitstellen. Es verifiziert den X-Syncanix-Intent-Header, bevor Ihr Handler läuft, weist jeden ungültigen oder wiederholten Aufruf mit 403 ab und übergibt Ihrem Handler die verifizierte Nutzlast — einschließlich des handelnden Tenants und Nutzers.
use std::sync::Arc;
use axum::{Extension, Router, routing::post, Json};
use syncanix_sdk_rust::axum::{SyncanixIntent, SyncanixConfig};
async fn refund_handler(SyncanixIntent(intent): SyncanixIntent) -> Json<serde_json::Value> {
Json(serde_json::json!({ "tenantId": intent.tenant_id }))
}
let config = Arc::new(SyncanixConfig::new(std::env::var("SYNCANIX_INTENT_SECRET").unwrap()));
let app: Router<()> = Router::new()
.route("/tools/refund", post(refund_handler))
.layer(Extension(config));