Exiger deux personnes pour une action
Ouvrez une demande de double contrôle pour un périmètre fixe, faites approuver son condensé par un second administrateur, puis exécutez l’action protégée.
dual.control-scopes
Ouvrez une demande de double contrôle pour un périmètre fixe, faites approuver son condensé par un second administrateur, puis exécutez l’action protégée.
dual.control-scopesFaites passer actions d’agents, hash de contenu, contrôles d’API, requêtes DNS, webhooks, appels LLM et commits git par Intramedial. Obtenez un reçu signé vérifiable par tous – sans nous croire.
Certaines actions, comme la révocation d’un locataire, devraient exiger deux administrateurs. L’un ouvre une demande avec le corps exact ; un second approuve son condensé, et la route protégée ne s’exécute alors qu’avec ce mandat d’autorisation.
Le code lit la clé depuis INTRAMEDIAL_KEY. Gardez-la dans votre shell ou votre coffre à secrets, jamais dans un fichier que vous commitez. Les appels qui exigent une personne connectée ne peuvent pas utiliser de clé : c’est la console qui les fait.
Huit périmètres sont fixés dans le code. La lecture les renvoie avec l’état du sceau et le nombre de demandes ouvertes. Tout autre périmètre est refusé.
dual.control-scopesdual-control-scopes
curl -sS https://api.intramedial.com/api/v1/acp/dual-control/scopes \
-H "Authorization: Bearer $INTRAMEDIAL_KEY"const res = await fetch("https://api.intramedial.com/api/v1/acp/dual-control/scopes", {
headers: { Authorization: `Bearer ${process.env.INTRAMEDIAL_KEY}`, },
});
console.log(res.status, await res.json());import os, requests
res = requests.get(
"https://api.intramedial.com/api/v1/acp/dual-control/scopes",
headers={"Authorization": "Bearer " + os.environ["INTRAMEDIAL_KEY"]},
timeout=30,
)
print(res.status_code, res.json())Un administrateur nomme le périmètre et le corps exact de l’action. Le condensé couvre ce corps : le second administrateur approuve donc précisément ce qu’il a lu. La demande reste ouverte 15 minutes sauf si ttlMs dit autrement, et l’appel renvoie request et digest.
{
"scope": "revoke-tenant",
"body": { "delegationId": "del_41" },
"ttlMs": 900000
}Un second administrateur approuve l’identifiant de la demande et le condensé. La route protégée ne s’exécute alors qu’avec le mandat d’autorisation.
{
"requestId": "…",
"digest": "…"
}Copié de: /docs/dual-control-scopes
kill-switch est protégé : aucune route ne le vérifie.Le registre est en ajout seul et scellé sous des racines de Merkle. L’heure d’une entrée est l’horloge propre d’Intramedial, et un bundle signé peut être vérifié hors ligne avec la clé publiée.
Laissez une écriture refusée attendre dans la file d’approbation jusqu’à ce qu’une personne connectée l’approuve, puis réessayez avec le jeton.
coordination.approveArrêtez un agent avec coordination.halt pour que l’admission réponde quarantine, vérifiez que c’est le cas, et levez l’arrêt quand c’est sûr.
coordination.haltcoordination.quarantineAdmettez l’écriture d’un agent dans un dépôt via Intralock et publiez le verdict sur le commit sous forme de check run ou de statut.
github.enforceUn court e-mail quand nous ajoutons des recettes. Rien d’autre, et désabonnement possible depuis chaque message.
Sans compte : 35 appels sur 7 jours sur les routes attest, avec des reçus marqués test. Inscrivez-vous quand vous voulez continuer.