Rust
Verifica las intenciones del agente de Syncanix en Rust —Axum, Actix Web y Tower— con una comprobación HMAC local en cada llamada a herramienta.
El SDK de Rust proporciona extractores y capas para Axum, Actix Web y Tower sobre un núcleo de verificación compartido. El extractor verifica la cabecera y rechaza los fallos con un 403 antes de que se ejecute tu handler.
Instalación
Añade el paquete a tu proyecto con el gestor de paquetes de tu lenguaje.
cargo add syncanix-sdk-rustConfigura el secreto
El SDK verifica las intenciones con el secreto de firma de intenciones de tu inquilino. Guárdalo como variable de entorno —nunca lo subas al control de versiones— y cárgalo donde registres el SDK.
export SYNCANIX_INTENT_SECRET="your-intent-signing-secret"Verifica las intenciones
Registra el SDK en las rutas que exponen acciones del agente. Verifica la cabecera X-Syncanix-Intent antes de que se ejecute tu handler, rechaza con un 403 cualquier llamada inválida o repetida y entrega a tu handler el payload verificado, incluidos el inquilino y el usuario que actúan.
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));