-
Notifications
You must be signed in to change notification settings - Fork 2
Operator Runbook
WebbinRoot edited this page Jul 28, 2026
·
2 revisions
This page is for recurring execution, validation, and release readiness.
For first-time setup, use Getting Started.
- Set active profile and scope:
creds list
creds swap <credname>
compartments set- Enumerate baseline data:
modules run enum_comp
modules run enum_all --download --get --comp --opengraph- Build OpenGraph output:
modules run process_oracle_cloud_hound_data --reset --out opengraph.json- Export operator review artifacts (Excel export needs the optional
[excel]extra —pip install "ocinferno[excel]"):
data export excel --out-dir ./report_excel- Enumeration modules always persist their results to the DB as they run — there is no
--save/--no-saveopt-in flag on the module runner. - To review saved workspace configuration after enumeration:
configs list
data sql --db service "SELECT count(*) FROM identity_users"- Default output root:
./ocinferno_output - Prefer explicit output paths for repeatable investigations:
modules run process_oracle_cloud_hound_data --out ./artifacts/opengraph.json
data export json --out-dir ./artifacts/export_json- Default OpenGraph export path (without
--out):./ocinferno_output/<workspace_id>_<workspace_name>/exports/opengraph/<compartment_or_tenancy_ocid>/bloodhound/oracle_cloud_hound.json
Run before merging graph-model or edge-behavior changes:
PYTHONPATH=. pytest -q \
tests/integration/opengraph_golden_iam/test_opengraph_golden_scenarios.py \
tests/integration/opengraph_basic_group_membership/test_group_membership_graph_builder.py \
tests/integration/opengraph_dynamic_group_membership/test_dynamic_group_membership_graph_builder.py \
tests/integration/test_smoke_export_and_logging_pipeline.py
PYTHONPATH=. pytest -q tests/unitWhen a behavior change is intentional:
OCINFERNO_REGEN_GOLDEN=1 PYTHONPATH=. pytest -q \
tests/integration/opengraph_golden_iam/test_opengraph_golden_scenarios.py \
tests/integration/opengraph_basic_group_membership/test_group_membership_graph_builder.py \
tests/integration/opengraph_dynamic_group_membership/test_dynamic_group_membership_graph_builder.pyThen rerun the full release gate commands above.
- Missing OpenGraph edges: verify the source enum module actually ran (and against the right compartment scope) -- enumeration always persists results, so a gap usually means the module wasn't run there yet.
- Identity-domain edge gaps:
rerun
enum_identityin the target scope. - Empty graph sections:
confirm whether
--include-allis needed for your analysis mode. - Golden mismatches:
only use
OCINFERNO_REGEN_GOLDEN=1when behavior changes are intentional.
- Module flags: Orchestration Module Reference
- Graph internals: OpenGraph - Node/Edge Tables
- Conditional behavior: OpenGraph - IAM Conditionals
Home | Getting Started | Auth | Workspace | Orchestration Modules | Downloads to Disk | Data View/Export | Operator Runbook | Troubleshooting and FAQ | OpenGraph - Node/Edge Tables | OpenGraph - Default Priv Escalation Mode | OpenGraph - IAM Conditionals | OpenGraph - Inheritance & IncludeAll | ConfigChecker - Static Config Checks | Module Development Guide
- Authentication Reference
- Workspace Instructions
- Orchestration Module Reference
- Enumeration Module Reference
- Exploit Module Reference
- Downloads to Disk
- Data View/Export
- Troubleshooting and FAQ