Codex セキュリティとエンタープライズ管理

Codex は多層的なセキュリティメカニズムとエンタープライズ管理機能を提供し、データの安全性を確保してチームコラボレーションをサポートします。


セキュリティメカニズムの概要

Codex のセキュリティ設計は複数の階層に分かれています:

階層メカニズム役割
サンドボックス分離Sandbox モードファイルとコマンドのアクセス範囲を制限
承認ポリシーApproval Policy操作実行前の確認を制御
ルールエンジンRulesコマンド実行権限を定義
ネットワーク制御ネットワークアクセス設定外部ネットワークアクセスを制限
データ保護エンタープライズ機能監査ログ、データレジデンシー

Sandbox サンドボックスモード

Sandbox は Codex の中核となるセキュリティメカニズムであり、Agent の操作範囲を制限します。

3種類のサンドボックスモード

モードファイル変更コマンド実行ネットワークアクセス適用シナリオ
read-only禁止禁止禁止コードレビュー、分析
workspace-writeワークスペースのみ許可禁止日常開発(推奨)
danger-full-access許可許可許可特殊なシナリオ(注意して使用)

サンドボックスモードの設定

サンドボックス設定

# CLI で指定
codex --sandbox read-only
codex --sandbox workspace-write
codex --sandbox danger-full-access

# 設定ファイル
[mycode4 type="toml"]
# ~/.codex/config.toml
sandbox = "workspace-write"
[/mycode4]

サンドボックス境界

  • ワークスペース境界:workspace-write モードはプロジェクトディレクトリ内のファイルのみ変更を許可します
  • コマンド境界:read-only はすべてのコマンド実行を禁止します
  • ネットワーク境界:デフォルトで Agent フェーズのネットワークアクセスを禁止します

デフォルトでは workspace-write モードの使用を推奨し、必要な場合にのみ danger-full-access を使用してください。


Approval 承認ポリシー

Approval ポリシーは、Codex が操作を実行する前の確認動作を制御します。

4種類の承認モード

モード動作リスクレベル
suggest提案のみを提供し、操作は実行しない最低
interactive機密操作の前に確認を求める低
auto-editファイル編集は自動、コマンドは確認が必要中
full-autoすべての操作を自動実行高

承認ポリシーの設定

承認設定

# CLI で指定
codex --approval-mode interactive

# セッション中に切り替え
/approval suggest
/approval auto-edit

# 設定ファイル
[mycode4 type="toml"]
approval_policy = "interactive"
[/mycode4]

Rules ルールエンジン

Rules は Starlark 言語を使用してコマンド実行ポリシーを定義します。

ルールタイプ

ルール説明
prefix_ruleコマンドプレフィックスに一致
glob_ruleファイルパスパターンに一致

決定タイプ

決定動作
allow自動承認して実行
promptユーザーに確認を求める
forbidden実行を禁止

ルール例

ルール定義

# ~/.codex/rules/default.rules

# Git コマンドを許可
prefix_rule(
    pattern = ["git"],
    decision = "allow",
    justification = "Git commands are safe for version control"
)

# npm install を許可
prefix_rule(
    pattern = ["npm", "install"],
    decision = "allow",
    justification = "Package installation is expected"
)

# ルートディレクトリの削除を禁止
prefix_rule(
    pattern = ["rm", "-rf", "/"],
    decision = "forbidden",
    justification = "Prevent system damage"
)

# sudo コマンドは確認を求める
prefix_rule(
    pattern = ["sudo"],
    decision = "prompt",
    justification = "Elevated privileges need review"
)

ネットワークアクセス制御

Codex のネットワークアクセス能力を制御し、データ漏洩を防ぎます。

クラウドネットワーク制御

フェーズデフォルトアクセス説明
セットアップスクリプト許可依存関係のダウンロードが必要
Agent 実行禁止デフォルトで無効、有効化可能

ドメインホワイトリスト

ネットワーク設定

# プリセットホワイトリスト
domain_allowlist = "common-dependencies"
# 含まれる:github.com, npmjs.com, pypi.org

# カスタムドメイン
domain_allowlist = [
    "github.com",
    "api.mycompany.com"
]

# HTTP メソッドを制限
allowed_methods = ["GET", "HEAD", "OPTIONS"]

セキュリティリスク

Agent のネットワークアクセスを有効にする際のリスク:

  • プロンプトインジェクション:悪意のあるWebページから命令を取得
  • データ漏洩:コードやキーを外部に送信
  • 悪意のある依存関係:悪意のあるコードを含むパッケージをダウンロード

必要な場合にのみ Agent ネットワークアクセスを有効にし、ドメインホワイトリストで制限してください。


エンタープライズ管理機能

Enterprise プランはエンタープライズレベルのセキュリティと管理機能を提供します。

エンタープライズ機能の概要

機能説明
SCIM自動ユーザープロビジョニング
SAML SSOシングルサインオン統合
MFA多要素認証
EKMエンタープライズキー管理
RBACロールベースのアクセス制御
監査ログ完全な操作記録
データレジデンシーデータ保存場所を指定

マネージド設定

エンタープライズ管理者は統一設定を配布できます。

マネージド設定の優先順位

設定のマージ順序:

  1. マネージド設定(エンタープライズ配布)——優先度最高
  2. プロジェクト設定(.codex/config.toml)
  3. ユーザー設定(~/.codex/config.toml)——優先度最低

マネージド設定の例

エンタープライズマネージド設定

# エンタープライズから配布されたマネージド設定

# サンドボックスモードを強制
sandbox = "workspace-write"

# 承認ポリシーを強制
approval_policy = "interactive"

# 無効化されたモデル
disabled_models = ["gpt-5.4-mini"]

# ネットワークホワイトリスト
domain_allowlist = ["github.com", "internal-api.company.com"]

# 監査設定
audit_logging = true

監査ログ

Enterprise プランは完全な監査ログ機能を提供します。

ログ内容

記録タイプ説明
セッション記録各セッションの作成、変更、削除
ツール呼び出しファイル読み書き、コマンド実行の詳細情報
モデル呼び出しAPI 呼び出し、トークン使用量
ユーザー操作ユーザー認証、権限変更

ログアクセス

監査ログ

# エンタープライズ管理パネルから監査ログにアクセス

# エクスポート形式:
- JSON 形式
- CSV形式
- SIEMシステム統合形式

データレジデンシー

Enterpriseはデータ保存領域を指定できます。

レジデンシーオプション

リージョン説明
米国デフォルトリージョン
欧州GDPR準拠
その他のリージョン企業の要件に応じて設定

データ保存場所の設定は、セールスチームに連絡して構成する必要があります。


チーム管理

ユーザープロビジョニング

SCIM 設定

# IdP(Okta、Azure ADなど)によるユーザーの自動管理

# サポートされる操作:
- ユーザーの自動作成
- ユーザー属性の自動更新
- 自動無効化/ユーザー削除

ロール権限

ロール権限
Admin完全管理権限
Member標準使用権限
Viewer読み取り専用権限

セキュリティベストプラクティス

日常利用

  • デフォルトでworkspace-writeサンドボックスモードを使用
  • 機密操作にはinteractive承認モードを使用
  • Rules設定を定期的にレビュー
  • API KeyをSecretsとして保存

エンタープライズ導入

  • SAML SSOとMFAを有効にする
  • マネージド構成で統一ポリシーを設定
  • 監査ログ記録を有効にする
  • コンプライアンス要件に応じてデータ保存場所を構成
  • ドメイン名ホワイトリストを使用してネットワークアクセスを制限

よくある質問

Q: Codex が重要なファイルを削除するのを防ぐには?

read-onlyまたはworkspace-writeサンドボックスモードを使用し、Rulesに削除コマンドを禁止する設定を追加します。

Q: 企業はどのように一括設定するのですか?

マネージド設定機能を使用すると、企業管理者が統一設定を配布し、ユーザー設定を上書きできます。

Q: 監査ログにはどのような情報が含まれますか?

すべてのセッション、ツール呼び出し、モデル呼び出し、ユーザー操作の完全な記録が含まれます。

Q: 機密データはどのように扱われますか?

Secretsを使用して機密情報を保存し、設定スクリプト内でのみ利用可能にし、Agent段階で自動的に削除します。

その他の拡張