saltar al contenido principal
Explorar la documentación

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-rust

Configura 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));
Verificación de una intención en una ruta de herramienta. Si tiene éxito, el payload verificado queda disponible para tu handler; si falla, el SDK devuelve 403 antes de que tu código se ejecute.

Próximos pasos