Aller au contenu
hs-sql-agent
2.0.3
Documentation 2.0.3
Documentation Exploitation

Référence de configuration

Configurer Docker autonome, HsSqlAgent.Hosting standard ou un Host HsSqlAgent.Server modulaire.

hs-sql-agent propose trois modes d’utilisation avec la même frontière de sécurité.

ModeModèle de configuration
Docker / ToolBoxsurface d’environnement complète de .env.example
HsSqlAgent.Hostingmême composition officielle standard via la configuration ASP.NET Core
HsSqlAgent.ServerOptions propres aux Capabilities sélectionnées explicitement par le Host

Approbation DML

MCP Elicitation est le Provider officiel par défaut. Docker autonome et HsSqlAgent.Hosting peuvent sélectionner l’adapter Webhook officiel sans modifier la primitive d’exécution SQL.

Variable d’environnementUsage
DML_APPROVAL_PROVIDERMcpElicitation ou Webhook
DML_APPROVAL_WEBHOOK_ENDPOINTendpoint du service d’approbation externe
DML_APPROVAL_WEBHOOK_CALLBACK_URLcallback URL publique pour terminer une pending approval
DML_APPROVAL_WEBHOOK_SIGNING_SECRETsecret de signature Webhook, au moins 32 UTF-8 bytes
{
  "DmlApproval": {
    "Provider": "Webhook",
    "Webhook": {
      "Endpoint": "https://approval.example.com/hssqlagent/requests",
      "CallbackUrl": "https://sql-agent.example.com/api/hs-sql-agent/approvals/webhook",
      "SigningSecret": "replace-with-a-unique-secret-at-least-32-bytes"
    }
  }
}

Un nom de Provider inconnu fait échouer le démarrage. Un Provider asynchrone peut retourner Pending ; le Durable Resume exige l’Admin Store afin de conserver le Resume Intent protégé et les Approval Fingerprints.

Un Host HsSqlAgent.Server modulaire peut enregistrer HsSqlAgent.Approvals.Webhook ou son propre IDmlApprovalProvider. Le Provider ne reçoit ni Database Connection, ni Transaction, ni Plan validé, ni primitive de commit.

Application et Control Plane

La configuration autonome couvre Application Hosting, Admin Database, MCP HMAC/Public Endpoint, JWT Admin intégré, SMTP/Password Reset, OIDC/MFA, Bootstrap, Audit, Health, Delivery, Cache, Rate Limit, Policy Sync, Outbound Delivery Sync, SQL Concurrency, Prometheus et OTLP.

HMAC_KEY et JWT_KEY doivent être deux secrets distincts d’au moins 32 bytes. Persistez DATA_PROTECTION_KEY_PATH lorsque l’Identity State protégé est utilisé.

Instance unique et Providers distribués

Une instance unique peut utiliser SQLite pour l’Admin Database et des Providers Memory locaux. Plusieurs Instances doivent utiliser une Admin Database partagée et les Providers Redis-backed pour Cache, Rate Limiting, Security Policy Sync, Outbound Delivery Sync et SQL Concurrency.

Observability

Prometheus utilise un Listener séparé configuré par PROMETHEUS_ENABLED, PROMETHEUS_HOST, PROMETHEUS_PORT. OTLP utilise OTLP_ENDPOINT et OTEL_SERVICE_NAME.

Host .NET intégré

HsSqlAgent.Hosting possède la composition standard complète. HsSqlAgent.Server part de AddHsSqlAgentCore() et ne valide que les Options des Capabilities sélectionnées. Host Authorization peut remplacer l’Identity intégrée, et le Provider d’approbation DML peut être remplacé indépendamment.

Voir Déploiement, Intégration ASP.NET Core et Safe DML.