Protección de datos para desarrolladores
OpenAI
Revisar secretos en el CLI local de Codex
Revise tanto los archivos que el CLI local de Codex puede leer como el entorno que heredan sus herramientas. La ejecución solo de lectura no significa que todos los archivos sean ilegibles, y un archivo .env oculto no es un control de acceso. La documentación actual de OpenAI describe perfiles de permiso deny-read y filtrado de entorno; verifique su disponibilidad y configuración efectiva en su cliente instalado usando solo marcadores sintéticos.
Para Ingeniería de seguridad y administradores de Codex
Dos entradas pueden exponer la misma credencial por rutas diferentes.
Entradas falsas y una sonda booleana fuera de línea. Los resultados del producto no están probados.01
Separe contenido de archivos del entorno de procesos
Una tarea local puede obtener configuración leyendo un archivo o mediante un proceso de herramienta que hereda variables de entorno. Cerrar una pestaña del editor no elimina ninguna fuente. Identifique qué material necesita la tarea y evite hacer disponibles credenciales no relacionadas al espacio de trabajo o entorno de lanzamiento.
Use marcadores falsos distintos para las dos preguntas. Un marcador de archivo prueba si una ruta de lectura hace disponible contenido. Un marcador de entorno prueba si una variable nombrada llega al proceso de herramienta. Combinarlos en un solo resultado oculta qué control necesita atención.
Contexto de la fuente: OpenAI: Referencia de configuración
02
Revise el límite actual de lectura
OpenAI distingue permisos de sandbox de decisiones de aprobación. Una operación permitida por la sandbox puede proceder bajo la política de aprobación seleccionada, por lo que “solo lectura” no debe interpretarse como “no puede leer secretos.” Inspeccione las raíces efectivas del espacio de trabajo y el modelo de permisos actual para el CLI instalado.
El ejemplo de perfil inerte selecciona d06-canary, extiende el incorporado solo lectura y niega solo .env.canary bajo las raíces efectivas del espacio de trabajo. Los perfiles de permiso están en beta y no se componen con configuraciones antiguas sandbox_mode; los requisitos gestionados pueden restringirlos más. Inspeccione el perfil efectivo antes de probar. El nombre de archivo exacto evita preguntas específicas de profundidad de plataforma sobre globos deny sin límite.
| Clave documentada | Ejemplo de fixture | Condición de revisión |
|---|---|---|
| default_permissions | d06-canary | Debe ser el perfil seleccionado efectivo |
| permissions.d06-canary.extends | :read-only | Preservar las restricciones base |
| filesystem.":workspace_roots" .env.canary | deny | Solo el archivo falso aislado |
| shell_environment_policy.filters | Variable falsa = excluir | Fragmento separado; preservar otros filtros |
Contexto de la fuente: OpenAI: Aprobaciones y seguridad de agentes · OpenAI: Perfiles de permisos
03
Revisar qué reciben los procesos hijos
El fragmento separado de filtro de entorno nombra solo AONA_D06_FAKE_INHERITED con una regla de exclusión. No habilita herencia ni establece valores. La documentación actual prohíbe combinar filtros con configuraciones heredadas exclude/include_only, así que el administrador debe revisar la configuración real primero. Mantenga evidencia en la configuración del marcador falso y recepción booleana en lugar de exportar contenidos del entorno.
La sonda offline suministrada solo verifica AONA_D06_FAKE_INHERITED y emite una comparación booleana con su valor sintético fijo. Nunca imprime el contenido de la variable ni enumera el entorno. Ejecútela solo en el contexto aislado del fixture si esa operación está aprobada; no la use para inspeccionar una credencial real.
Contexto de la fuente: OpenAI: Referencia de configuración
04
Recoja observaciones separadas y mínimas
Comience con la línea base permitida de archivos. Luego revise el archivo falso restringido bajo el perfil de permiso previsto. Registre cualquier solicitud de aprobación y si se devolvió el marcador. No relaje controles para obtener una lectura exitosa. Una línea base ausente necesita investigación antes de que el resultado de archivo restringido sea útil.
Para la comprobación de entorno, decida si la variable falsa debe heredarse antes de ejecutar la sonda. Un resultado falso puede significar que el filtro funcionó, la variable nunca se estableció o el contexto de lanzamiento fue distinto. Registre esos prerrequisitos. La hoja de resultados separa por tanto configuración, política prevista y observación en lugar de etiquetar un booleano automáticamente seguro.
| Entrada | Fixture seguro | Evidencia necesaria |
|---|---|---|
| Archivo permitido | allowed-marker.txt | Resultado base de lectura |
| Archivo restringido | .env.canary copied from the pack | Perfil, ruta y decisión de operación |
| Variable heredada | AONA_D06_FAKE_INHERITED | Configuración padre y resultado booleano hijo |
| Approval | Operación aislada real | Prompt mostrado y decisión tomada |
05
Mantenga la conclusión local y fechada
Un informe público de marzo de 2026 generó preocupación sobre lecturas de .env. La documentación oficial actual describe controles deny-read, por lo que el informe antiguo no debe presentarse como prueba de que Codex moderno no los tiene. Revise la versión local exacta del CLI y configuración en su lugar.
Esta guía no cubre scripts de configuración en la nube ni ciclos de vida de secretos de agentes en la nube. Tampoco establece cobertura Aona de todos los resultados de herramientas CLI. Cierre la revisión con las tareas y configuraciones locales aprobadas, propietarios no resueltos y disparadores de rechecado para actualizaciones o cambios en configuraciones de lanzamiento.
Contexto de la fuente: Codex: preocupación histórica de lectura .env · OpenAI: Perfiles de permisos
Ponlo en práctica
Revisión local de archivos y entorno de Codex
Utilice diferentes marcadores sintéticos para revisar lecturas de archivos y datos heredados de procesos de herramientas.
Entradas falsas y una sonda booleana fuera de línea. Los resultados del producto no están probados.
| Entrada | Regla prevista | Observado |
|---|---|---|
| Archivo permitido | Definir una línea base legible | Untested |
| Canario restringido .env | Definir la restricción de lectura | Untested |
| Variable heredada falsa | Definir si se permite la herencia | Untested |
Trabaja en tu reseña
Usa las verificaciones para organizar las pruebas que necesitas. Guarda tus selecciones en Word, luego añade tus notas y pruebas. Tus selecciones permanecen en esta pestaña hasta que las descargues.
0 de 3 Revisado
Ejemplos y material de revisión
Lee los detalles aquí, o mantén juntos el documento PDFeditable Word y las hojas de cálculo.
Local Codex synthetic secret reviewLee
No real credentials, provider calls or automatic configuration changes are included. Use a NEW isolated folder with no real repository or secrets.
File-read review
- Copy env-canary.txt to .env.canary in this fixture folder.
- Inspect codex-permissions.example.toml. It selects d06-canary, extends :read-only and denies exactly .env.canary under effective workspace roots. It is not an active config filename. Have the authorised administrator apply only the reviewed example through the supported test configuration mechanism, preserving managed requirements and other restrictions.
- Current permission profiles are beta. They do not compose with sandbox_mode, --sandbox or sandbox_workspace_write; an older setting can cause the profile to be ignored. Confirm the effective selected profile and supported installed version before proceeding. Do not relax an existing policy to activate the example.
- Establish a permitted read of allowed-marker.txt, then request a direct read of .env.canary. The intended profile outcome is denial of that fake file. Record actual behaviour in results.csv; the pack contains no observed client result.
Separate inherited-environment review 5. Use only AONA_D06_FAKE_INHERITED=NOT_A_CREDENTIAL_D06_ENV_MARKER from fake-environment.txt in the isolated test launch. Do not substitute a real value. 6. If the already approved baseline policy permits that fake variable, run the offline environment_probe.py through the intended tool process and record whether it returns true. A false baseline leaves the setup/inheritance prerequisite unresolved; do not broaden policy to force a true result. 7. Inspect codex-environment-filter.example.toml. An authorised administrator can add its single fake-variable exclusion while preserving the rest of the test policy. Current filters must not be mixed with legacy exclude/include_only settings. The fragment does not change inheritance or inject a value. 8. Repeat the same probe in a fresh applicable test launch. The intended filtered result is false. Record the effective configuration and result separately. The probe prints only a boolean and makes no network call.
The profile uses one exact relative filename, not an unbounded glob. Broader rules have platform/version considerations documented by OpenAI. These local tests do not establish cloud-agent behaviour or universal Aona coverage.
Guide y source references
Canonical guide: https://aona.ai/resources/guides/codex-env-secrets-file-access/ Source review: 2026-09-21
- OpenAI: Agent approvals y security: https://learn.chatgpt.com/docs/agent-approvals-security
- OpenAI: Permission profiles: https://learn.chatgpt.com/docs/permissions
- OpenAI: Configuration reference: https://learn.chatgpt.com/docs/config-file/config-reference
- Codex: historical .env read concern: https://github.com/openai/codex/issues/13778
ResultsLee
| Client version | OS | Permission model | Workspace roots | Entrada | Parent setup | Intended policy | Approval | Observado | Evidencia |
|---|---|---|---|---|---|---|---|---|---|
| allowed file | DEFINE | DEFINE | UNTESTED | ||||||
| restricted file | DEFINE | DEFINE | UNTESTED | ||||||
| fake inherited variable | DEFINE | DEFINE | UNTESTED |
Código de trabajo y archivos de prueba
Utiliza los archivos originales para los ejercicios de código y datos. El código fuente ZIP incluye sus instrucciones y datos de entrada.
Descargar ejemplos de fuentes (ZIP)Allowed markerTXT
SYNTHETIC_D06_ALLOWED_MARKER
Descargar allowed-marker.txtEnv canaryTXT
EXAMPLE_ONLY=NOT_A_CREDENTIAL_D06_FILE_MARKER
Descargar env-canary.txtFake environmentTXT
AONA_D06_FAKE_INHERITED=NOT_A_CREDENTIAL_D06_ENV_MARKER
Descargar fake-environment.txtEnvironment probePY
# Offline probe for one fixed synthetic variable. Never prints its value.
import json
import os
name = "AONA_D06_FAKE_INHERITED"
expected = "NOT_A_CREDENTIAL_D06_ENV_MARKER"
print(json.dumps({"fixture": "D06", "expected_fake_marker_received": os.environ.get(name) == expected}))
Descargar environment_probe.pyCodex permissions.exampleTOML
# INERT EXAMPLE: not loaded automatically. Isolated canary workspace only.
# Current permission profiles are beta. Do not combine with sandbox_mode,
# --sandbox or sandbox_workspace_write; respect managed requirements.
default_permissions = "d06-canary"
[permissions.d06-canary]
extends = ":read-only"
[permissions.d06-canary.filesystem.":workspace_roots"]
".env.canary" = "deny"
Descargar codex-permissions.example.tomlCodex environment filter.exampleTOML
# INERT FRAGMENT: adds an exclusion for one fake variable only.
# Review and preserve existing policy. Do not combine filters with legacy
# shell_environment_policy.exclude or include_only in the same layer.
# No inheritance, value, sandbox or network setting is changed here.
[shell_environment_policy.filters]
"AONA_D06_FAKE_INHERITED" = "exclude"
Descargar codex-environment-filter.example.tomlAntes de que continúes
Mantén claras estas distinciones
- Llamar éxito a cada resultado falso de la sonda
- Primero establezca si la variable falsa se configuró en el padre previsto y llegó al contexto de lanzamiento correcto.
- Reutilizando suposiciones de la nube localmente
- Los controles locales de archivos CLI y entorno de proceso difieren de la configuración alojada y fases de agentes.
Aplícalo al uso de IA por parte de empleados
Lleva tu ruta real de datos.
Aona puede ayudar a evaluar indicaciones y rutas de archivos de empleados soportados en una evaluación local con cliente acotado.
Este fixture no prueba que Aona intercepte todos los comandos CLI de Codex o resultados de herramientas. Las capacidades nativas dependen de la versión instalada, SO, proveedor y transporte.
Lleve el registro de configuración local y las observaciones de marcadores falsos a una revisión de ruta soportada.
Revisa tu caso de usoPreguntas frecuentes
Preguntas sobre esta decisión
¿El modo solo lectura impide que Codex lea archivos .env?
¿Esta guía aplica una configuración segura de Codex?
¿La sonda de entorno imprimirá un secreto real?
¿Puede el mismo resultado aprobar Codex en la nube?
Evidencia detrás de la guía
Fuentes y alcance
Preparado por Aona. Fuentes comprobadas 2026-09-21. El material citado respalda los puntos específicos a continuación; no certifica un producto ni su caso de uso.
- OpenAI: Aprobaciones y seguridad de agentes
Separa permisos de sandbox y política de aprobación.
vendor · comprobado 2026-09-21 - OpenAI: Perfiles de permisos
Documenta rutas/globs exactos de denegación de lectura y consideraciones específicas de plataforma.
vendor · comprobado 2026-09-21 - OpenAI: Referencia de configuración
Documenta herencia y filtrado del entorno shell.
vendor · comprobado 2026-09-21 - Codex: preocupación histórica de lectura .env
Una preocupación de practicantes de marzo de 2026, no una afirmación sobre capacidad actual de CLI.
practitioner · comprobado 2026-09-21