Codex Sécurité et gestion d'entreprise
Codex fournit des mécanismes de sécurité multicouches et des fonctionnalités de gestion d'entreprise pour garantir la sécurité des données et soutenir la collaboration d'équipe.
Aperçu des mécanismes de sécurité
La conception de sécurité de Codex est divisée en plusieurs couches :
| Niveau | Mécanisme | Fonction |
|---|---|---|
| Isolation du bac à sable | Mode bac à sable | Restreindre la portée d'accès aux fichiers et aux commandes |
| Politiques d'approbation | Politique d'approbation | Contrôle de confirmation avant l'exécution de l'opération |
| Moteur de règles | Règles | Définir les autorisations d'exécution des commandes |
| Contrôle réseau | Paramètres d'accès au réseau | Restreindre l'accès au réseau externe |
| Protection des données | Fonctionnalités d'entreprise | Journaux d'audit, résidence des données |
Mode bac à sable
Le bac à sable est le mécanisme de sécurité central de Codex, limitant le périmètre opérationnel de l'Agent.
Trois modes de bac à sable
| Mode | Modification de fichiers | Exécution de commande | Accès réseau | Scénarios applicables |
|---|---|---|---|---|
| read-only | Refuser | Refuser | Refuser | Revue de code, analyse |
| workspace-write | Espace de travail uniquement | Autorisé | Refuser | Développement quotidien (recommandé) |
| danger-full-access | Autorisé | Autorisé | Autorisé | Scénarios spéciaux (à utiliser avec prudence) |
Définir le mode Sandbox
Configuration du bac à sable
codex --sandbox read-only
codex --sandbox workspace-write
codex --sandbox danger-full-access
# Fichier de configuration
[mycode4 type="toml"]
# ~/.codex/config.toml
sandbox = "workspace-write"
[/mycode4]
Limites de la sandbox
- Limites de l'espace de travail: le mode workspace-write autorise uniquement la modification de fichiers dans le répertoire du projet
- Limites des commandes: read-only interdit toute exécution de commandes
- Limites du réseau: par défaut, l'accès au réseau pendant la phase Agent est interdit
Il est recommandé d'utiliser le mode workspace-write par défaut, et de n'utiliser danger-full-access que si nécessaire.
Politique d'approbation
Les politiques d'approbation contrôlent le comportement de confirmation avant que Codex n'exécute des opérations.
Quatre modes d'approbation
| Mode | Comportement | Niveau de risque |
|---|---|---|
| suggest | Fournir uniquement des suggestions, n'exécuter aucune opération | Minimum |
| interactive | Demander confirmation avant les opérations sensibles | Faible |
| auto-edit | Modifier automatiquement les fichiers, les commandes nécessitent une confirmation | Moyenne |
| full-auto | Exécuter automatiquement toutes les opérations | Élevée |
Définir la politique d'approbation
Configuration de l'approbation
codex --approval-mode interactive
# Changer pendant la session
/approval suggest
/approval auto-edit
# Fichier de configuration
[mycode4 type="toml"]
approval_policy = "interactive"
[/mycode4]
Moteur de règles
Les règles utilisent le langage Starlark pour définir les politiques d'exécution des commandes.
Types de règles
| Règles | Description |
|---|---|
| prefix_rule | Correspondance du préfixe de commande |
| glob_rule | Correspondance des motifs de chemin de fichier |
Types de décision
| Décision | Comportement |
|---|---|
allow | Approuver automatiquement l'exécution |
prompt | Demander confirmation à l'utilisateur |
forbidden | Refuser l'exécution |
Exemples de règles
Définitions de règles
# Autoriser les commandes Git
prefix_rule(
pattern = ["git"],
decision = "allow",
justification = "Les commandes Git sont sûres pour le contrôle de version"
)
# Autoriser npm install
prefix_rule(
pattern = ["npm", "install"],
decision = "allow",
justification = "L'installation du paquet est attendue"
)
# Interdire la suppression du répertoire racine
prefix_rule(
pattern = ["rm", "-rf", "/"],
decision = "forbidden",
justification = "Éviter d'endommager le système"
)
# Demander à propos des commandes sudo
prefix_rule(
pattern = ["sudo"],
decision = "prompt",
justification = "Les privilèges élevés nécessitent une vérification"
)
Contrôle d'accès réseau
Contrôle les capacités d'accès réseau de Codex pour prévenir les fuites de données.
Contrôle du réseau cloud
| Phase | Accès par défaut | Description |
|---|---|---|
| Scripts d'installation | Autorisé | Nécessité de télécharger les dépendances |
| Exécution de l'agent | Refuser | Désactivé par défaut, peut être activé |
Liste blanche de domaines
Configuration réseau
domain_allowlist = "common-dependencies"
# Inclut : github.com, npmjs.com, pypi.org
# Domaines personnalisés
domain_allowlist = [
"github.com",
"api.mycompany.com"
]
# Restreindre les méthodes HTTP
allowed_methods = ["GET", "HEAD", "OPTIONS"]
Risques de sécurité
Risques liés à l'activation de l'accès réseau de l'Agent :
- Injection de prompt : obtention d'instructions à partir de pages web malveillantes
- Fuite de données : envoi de code ou de secrets vers l'extérieur
- Dépendances malveillantes : téléchargement de paquets contenant du code malveillant
Activez l'accès réseau de l'Agent uniquement lorsque c'est nécessaire, et limitez-le à l'aide d'une liste blanche de domaines.
Fonctionnalités de gestion Enterprise
L'offre Enterprise fournit des fonctionnalités de sécurité et de gestion de niveau entreprise.
Aperçu des fonctionnalités Enterprise
| Fonctionnalités | Description |
|---|---|
| SCIM | Provisionnement automatique des utilisateurs |
| SAML SSO | Intégration de l'authentification unique |
| MFA | Authentification multifacteur |
| EKM | Gestion des clés d'entreprise |
| RBAC | Contrôle d'accès basé sur les rôles |
| Journaux d'audit | Journaux d'opérations complets |
| Résidence des données | Spécifier la région de stockage des données |
Configuration gérée
Les administrateurs d'entreprise peuvent déployer des configurations unifiées.
Priorité de la configuration gérée
Ordre de fusion des configurations
- Configuration gérée (déploiement d'entreprise) - priorité la plus élevée
- Projet (.codex/config.toml)
- Configuration utilisateur (~/.codex/config.toml) — priorité la plus faible
Exemple de configuration gérée
Géré par l'entreprise
# Mode sandbox obligatoire
sandbox = "workspace-write"
# Politique d'approbation obligatoire
approval_policy = "interactive"
# Modèles désactivés
disabled_models = ["gpt-5.4-mini"]
# Liste blanche réseau
domain_allowlist = ["github.com", "internal-api.company.com"]
# Configuration d'audit
audit_logging = true
Journaux d'audit
Le forfait Enterprise fournit une fonctionnalité complète de journal d'audit.
Contenu du journal
| Types d'enregistrement | Description |
|---|---|
| Enregistrements de session | Création, modification et suppression de chaque session |
| Appels d'outils | Informations détaillées sur les lectures/écritures de fichiers et l'exécution de commandes |
| Appels de modèle | Appels API, utilisation de jetons |
| Actions des utilisateurs | Authentification des utilisateurs, modifications des autorisations |
Accès aux journaux
Journaux d'audit
# Exportable sous :
- Format JSON
- Format CSV
- Format d’intégration au système SIEM
Résidence des données
L’entreprise peut spécifier les régions de stockage des données.
Options de résidence
| Région | Description |
|---|---|
| États-Unis | Région par défaut |
| Europe | Conformité au RGPD |
| Autres régions | Configurer selon les besoins de l'entreprise |
Les paramètres de résidence des données nécessitent de contacter l'équipe commerciale pour la configuration.
Gestion des équipes
Provisionnement des utilisateurs
Configuration SCIM
# Opérations prises en charge :
- Créer automatiquement des utilisateurs
- Mettre à jour automatiquement les attributs utilisateur
- Désactiver automatiquement/Supprimer les utilisateurs
Permissions des rôles
| Rôle | Permissions |
|---|---|
| Admin | Permissions administratives complètes |
| Membre | Permissions d'utilisation standard |
| Lecteur | Permissions en lecture seule |
Bonnes pratiques de sécurité
Utilisation quotidienne
- Utiliser le mode sandbox workspace-write par défaut.
- Les opérations sensibles utilisent le mode d'approbation interactif
- Examiner régulièrement la configuration des Rules
- Clés API stockées en tant que Secrets
Déploiement en entreprise
- Activer SAML SSO et MFA
- Configurer la configuration gérée pour des politiques unifiées
- Activer la journalisation d'audit
- Configurer la résidence des données selon les exigences de conformité
- Utiliser la liste blanche de domaines pour restreindre l'accès réseau
FAQ
Q : Comment empêcher Codex de supprimer des fichiers importants ?
Utiliser le mode sandbox en lecture seule ou workspace-write, et ajouter des Rules pour interdire les commandes de suppression.
Q : Comment les entreprises configurent-elles uniformément ?
Grâce à la fonctionnalité de configuration gérée, les administrateurs d'entreprise peuvent déployer des configurations unifiées qui remplacent les paramètres utilisateur.
Q : Quelles informations sont incluses dans les journaux d'audit ?
Contient un enregistrement complet de toutes les sessions, appels d'outils, appels de modèle et opérations utilisateur.
Q : Comment gérer les données sensibles ?
Utiliser Secrets pour stocker des informations sensibles ; il n'est disponible que dans les scripts de configuration et est automatiquement supprimé pendant la phase Agent.
autres extensions