Identifiants
Stockez en toute sécurité les clés API dans Credential Center et référencez-les dans les workflows.
Credential Center est le stockage unifié de toutes les clés système externes - clé API OpenAI, Slack Webhook, Stripe Secret, en-tête d'authentification API interne... elles sont toutes placées ici. La plate-forme utilise AES-256-GCM pour chiffrer la base de données, et elle n'apparaîtra pas dans les exportations, journaux et événements d'audit YAML du début à la fin.
Pourquoi est-il nécessaire d’aller au Credential Center ?
Si vous souhaitez écrire facilement la clé directement dans YAML, vous rencontrerez trois types de problèmes :
- fuite — L’exportation de YAML, de la soumission Git et de l’aperçu différentiel de l’assistant AI feront tous ressortir la clé en texte brut.
- Impossible de tourner — Lorsque la clé est révoquée, chaque YAML doit être modifié manuellement, ce qui est très facile à manquer.
- Impossible d'auditer — Lorsqu’un problème survient, je ne sais pas quelle clé a été utilisée dans quelle exécution.
Credential Center ne laisse que des « références » dans YAML, et les valeurs réelles sont injectées dans l'étape correspondante au moment de l'exécution.
La configuration complète de l’assistant IA se trouve dans Paramètres du compte → Assistant IA. Les modèles, prompts, outils, Skills, MCP et paramètres Claude Code / Codex y sont gérés ; cette page enregistre les identifiants personnels et d’équipe.
Créer un identifiant
- « Gestion des informations d'identification » à gauche → « Nouvelles informations d'identification » dans le coin supérieur droit.
- Remplissez :
- Nom — Un identifiant court entièrement en minuscules + trait de soulignement, qui sera utilisé pour les citations dans YAML. Exemple :
openai_main、slack_webhook_url。 - Tapez — api_key / oauth_token / bot_token / webhook_secret / generic。类型决定平台在 UI 上怎么展示它,对解析逻辑影响不大。
- valeur — Une fois écrit, il ne peut pas être relu.
- Espace de noms — Individuel/Équipe (si vous faites partie d'une équipe sur le forfait Pro+).
- Description (facultatif) — Écrit pour vous-même ou pour les membres de votre équipe, par exemple : "Clé Prod du projet OpenAI X".
- Nom — Un identifiant court entièrement en minuscules + trait de soulignement, qui sera utilisé pour les citations dans YAML. Exemple :
- Enregistrez. La plateforme crypte immédiatement la base de données et l'affiche dans la liste comme
****abc3Cette forme des derniers chiffres.
Ceci est sécurisé de par sa conception : même les administrateurs de plate-forme ne peuvent pas lire les valeurs de vos informations d'identification. Si vous oubliez la valeur d'origine et devez la modifier, vous pouvez uniquement la supprimer et la reconstruire ou l'écraser avec la « valeur de mise à jour ».
Citer les informations d'identification dans YAML
Pour l'utilisation de l'agent : champ fournisseur
agents:
writer:
preset: writer
overrides:
model: gpt-4.1-mini
provider: openai_main # 凭据中心里的凭据名provider: openai_main Dites à l'agent : "Utilisez la clé nommée openai_main dans le centre d'informations d'identification lors du débogage de LLM." La plateforme analyse dans l'ordre des espaces de noms et le premier accès prend effet.
Pour l'étape de code, utilisez : liste d'informations d'identification
- id: charge_customer
type: code
language: node
credentials:
- stripe_secret # 声明需要这两个凭据
- internal_api_token
code: |
const stripe = require('stripe')(process.env.STRIPE_SECRET);
const internal = await fetch('https://api.mycompany.com/invoice', {
headers: { Authorization: 'Bearer ' + process.env.INTERNAL_API_TOKEN }
});
// ...Descriptif :
- Seuls ceux explicitement déclarés dans la liste d'informations d'identification peuvent être lus - ils ne seront pas divulgués à d'autres étapes.
- Après analyse, il est injecté en tant que variable d'environnement : nom d'identification openai_main → env var OPENAI_MAIN (SCREAMING_SNAKE_CASE).
- Seuls ceux déclarés peuvent être vus dans process.env ; les autres informations d'identification du centre d'informations d'identification sont invisibles pour ce code.
Référencé dans une expression variable
Certains champs (tels que les entrées du sub_workflow) peuvent être directement {{credentials.xxx}} Citation :
- id: notify
type: sub_workflow
module: dingyue-module-slack-deliver
inputs:
slack_webhook_url: "{{credentials.slack_webhook_url}}"
message_text: "..."Également analysé dans l'ordre des espaces de noms. La valeur des informations d'identification ne prend effet que lorsque l'étape en cours est en cours d'exécution et ne sera pas écrite dans l'instantané d'exécution.
Espaces de noms et ordre d'analyse
Le même nom peut exister dans différents espaces de noms. Lors de l'exécution, recherchez dans l'ordre suivant, premier clic, premier utilisé :
- espace de noms personnel — Si vous le construisez vous-même, vous seul pouvez le référencer.
- Espace de noms d'équipe — Il est partagé par votre équipe et peut être référencé par tous les membres. Seul l'administrateur de l'équipe peut créer/supprimer.
- Clé de production partagée (compte payant de l'équipe) → espace de noms de l'équipe
- Pour vos propres tests / je n'ai pas décidé de le mettre dans l'équipe → Espace de noms personnel
- Commun à toute l'équipe : utilisez le même nom aux deux niveaux (par exemple, openai_main), et il n'est pas nécessaire de le modifier dans YAML - vous utilisez le nom personnel lors des tests, et passez automatiquement à celui de l'équipe lorsque vous vous connectez.
Fournisseur : lier plusieurs clés à différentes entreprises
Si vous disposez de plusieurs clés (test/prod/équipe/projet X/projet Y) dans le même fournisseur LLM (comme OpenAI), vous pouvez :
- Créez une clé pour chaque clé dans le centre d'informations d'identification (différence de nom : openai_test / openai_prod_a / openai_prod_b).
- Le champ overrides.provider de l'agent spécifie lequel utiliser.
- Différents workflows peuvent utiliser différents fournisseurs mais le même préréglage sans copier la définition de l'agent.
agents:
expensive:
preset: universal
overrides:
model: claude-opus-4-7
provider: anthropic_team_budget # 团队有预算的那把
cheap:
preset: universal
overrides:
model: deepseek-v3-5
provider: deepseek_personal # 个人账户的
Claude Code / Identifiants d'abonnement au Codex
Si l'assistant AI ou l'agent de workflow utilise le modèle de quota d'abonnement, veuillez créer le fournisseur correspondant dans « Mes informations d'identification » :
claude_code_oauth— Le Token OAuth obtenu en se connectant avec Claude Code.codex_subscription— Texte intégral de auth.json généré par la connexion Codex CLI.
Ces valeurs ne seront pas enregistrées dans la configuration de l'agent/assistant AI, mais ne seront injectées que temporairement dans la CLI correspondante au moment de l'exécution.
Rotation et révocation
Rotation normale
- Centre d'informations d'identification → Cliquez sur un identifiant → « Mettre à jour la valeur ».
- Entrez une nouvelle valeur à enregistrer.
- Les nouvelles exécutions initiées par la suite utilisent la nouvelle valeur ; les exécutions en cours continuent d'utiliser l'ancienne valeur mise en cache au démarrage.
Révocation d'urgence
Je soupçonne que mes identifiants ont été divulgués et je souhaite les désactiver immédiatement :
- Cliquez sur l'identifiant dans le Centre d'informations d'identification → "Supprimer".
- Toutes les étapes qui y font référence échoueront immédiatement avec credential_not_found lors de leur prochaine exécution.
- Rendez-vous ensuite chez le fournisseur amont (OpenAI / Anthropic...) pour révoquer la vraie clé.
Supprimez-le d'abord dans Braidrun, puis accédez à l'amont pour le révoquer - si vous le faites dans l'autre sens, si vous le révoquez en amont avant de le supprimer, l'exécution en cours échouera soudainement en grand nombre.
Vérification
Un journal d’audit sera enregistré pour chaque création/mise à jour/suppression/échec de résolution référencée des informations d’identification. Les administrateurs peuvent accéder à la page « Journal d'audit » pour filtrer les informations d'identification_* par type d'événement à afficher.
Aucun journal ne sera enregistré si l'analyse de référence réussit - pour éviter une explosion du journal. Mais les métadonnées indiquant « quelles informations d'identification ont été analysées par cette exécution » seront affichées dans les détails de chaque exécution.
FAQ
Puis-je utiliser des variables d’environnement à la place ?
Techniquement possible (via les variables d'environnement auto-déployables de l'équipe), mais déconseillé :
- Les variables d'environnement sont globales au niveau du processus et peuvent être lues par process.env à n'importe quelle étape de code. Credential Center n’injecte que les quelques-uns que vous déclarez.
- La rotation des variables d'environnement nécessite le redémarrage du service et les modifications apportées au Credential Center prendront effet immédiatement.
- Les variables d'environnement ne sont pas auditées.
Les collègues peuvent-ils voir mes informations d'identification personnelles en matière d'espace de noms ?
Non. Même l'administrateur d'équipe ne peut voir que l'existence des informations d'identification (dans la liste), mais ne peut pas voir la valeur ni la référencer dans son propre flux de travail - l'analyse d'exécution manquera.
OAuth Que faire du rafraîchissement ?
Pour les fournisseurs OAuth traditionnels (Google / GitHub / Slack / Notion) : rafraîchir_token est placé dans le centre d'informations d'identification et la plateforme access_token est automatiquement actualisée. Pour les autres fournisseurs, vous devez insérer un jeton valide à long terme dans les informations d'identification ou écrire vous-même l'étape de code d'actualisation.
Étape suivante
- BYOK · utilisez votre propre LLM Key — Le scénario d'identification le plus courant : configuration de votre propre clé de fournisseur LLM
- Variables et expressions —
{{credentials.xxx}}Détails supplémentaires de l'expression - Autorisations et rôles — Comment les autorisations d'administrateur sont-elles attribuées à l'espace de noms de l'équipe ?