clickhouse

v0.2.0 collector

Collects ClickHouse Cloud console and database access settings

v0.1.0 passed its nightly check on Nov 7, 2026: 147 of 147 values matched. See the checked values

Install

epack install collector clickhouse

Adds to epack.yaml, resolves dependencies, downloads binary.

Usage

Run all configured collectors and build a pack:

epack collect

Runs all collectors in epack.yaml and outputs an evidence pack.

Configuration

Or add manually to epack.yaml:

collectors:
  clickhouse:
    source: https://github.com/locktivity/epack-collector-clickhouse

Then run epack install to lock and sync.

epack-collector-clickhouse collects evidence of who can reach a ClickHouse Cloud organization and its data: the people and keys that can use the console and the Cloud API, and the database users, roles, and grants in each service.

What it collects

From the Cloud API:

  • Members and the console roles each one holds, with a count of those who hold Admin, when the key's role has control-plane:organization:manage (see configuration.md).
  • Invitations that have not been accepted, pending or expired.
  • API keys: each key's state, roles, expiry, IP access list, and when it was last used.
  • Console roles and what each one grants, when the key's role has control-plane:organization:manage.

From each service you list, read with SQL over HTTPS as a read-only database user:

  • Database users: each user's sign-in methods, when each one stops working, any second factor, and the addresses the user may connect from.
  • Roles, the roles granted to users and to other roles, and every privilege granted.
  • Settings profiles and what they set, quotas and their limits, and row policies and whom they apply to.

ClickHouse Cloud creates its own database users, roles, settings profiles, and quotas in every service. The collector lists them apart from the customer's, with the grants, settings, and limits that belong to them, and counts them separately. Cloud's own are the users, profiles, quotas, and row policies stored in users_xml, and the roles clickpipes_system, default_role, sql_console_admin, and sql_console_read_only. Cloud also creates the default and sql-console users, and they count as the customer's.

What it never collects

  • Passwords, password hashes, SSH keys, and API key secrets.
  • Member names. A member appears by email, from the audit level.
  • Row policy filter expressions, which can hold the customer's data.

Access posture

artifacts/clickhouse.access-posture.json holds the console's members, admins, and API keys in the evidencepack/access-posture@v1 form. Its admins are the members who hold the system Admin role. Its credentials are the API keys that are enabled and have not expired.

  • A key never expires when it has no expiry date.
  • A key is unused when it was never used or was last used more than 90 days before the run.
  • A key is unrestricted when it holds the Admin role and its IP access list admits any address. A key with another role or a narrower IP access list is restricted.
  • A key has write access when it holds the Admin role.
  • A key is overdue for rotation when it was created more than 90 days before the run.

Values ClickHouse Cloud does not report

ClickHouse Cloud has no API that says whether the organization uses SAML SSO or whether a member signs in with MFA. The detailed artifact holds both as null, and the collector result records an unsupported gap for each.

The access-posture file leaves out these values, each with an unsupported gap:

  • The sign-in rules for SSO, MFA, and SCIM.
  • Members and admins who can sign in without SSO, and their MFA. ClickHouse Cloud keeps a person's SAML account apart from their password account, and the member list does not say which kind each member is.
  • Members who sign in through SSO, and members from outside the organization. The member list marks neither.
  • Root accounts, since an organization has none.
  • Connected apps, since the Cloud API does not list them.

Values the collector does not read

The access-posture file leaves out inactive members with a not_read gap. ClickHouse Cloud's activities list reports member sign-ins. Reading it needs control-plane:organization:view-activities, which is not among the permissions in configuration.md. A not_read gap does not make the run partial.

Artifacts

  • artifacts/clickhouse.details.json, described by docs/schema/v1.0.0.json.
  • artifacts/clickhouse.access-posture.json, described by epack's evidencepack/access-posture@v1 schema, with the collector's methods from docs/schema/methods.json.
  • artifacts/clickhouse.collector-result.json, which records each value left out and why, the run's steps, and its calls.

See levels.md for what each collection level adds and examples.md for sample output.

Configuration

The collector reads the console through the ClickHouse Cloud API with an API key, and each service you list through its HTTPS interface as a database user.

1. Create the API key

The key's role decides what the collector reads from the console:

Permissions on the organization The collector reads
control-plane:organization:view and control-plane:organization:view-api-keys The organization, its invitations, and its API keys
Both of those and control-plane:organization:manage Also the members, their console roles, and what each console role grants

control-plane:organization:manage also lets the key change the organization, including its members and their roles. Without it, the collector leaves the members and the role definitions out with a permission_denied gap. The members and admins in artifacts/clickhouse.access-posture.json are left out with the same gap. ClickHouse's API reference says control-plane:organization:view is enough to list members, but the API returns an empty list without control-plane:organization:manage.

  1. In the ClickHouse Cloud console, open your organization's Users and roles, select Roles, and select Create new role.
  2. Name the role epack-collector, select Allow, and give it the permissions from the table.
  3. Create an API key with only the epack-collector role. Add every address the collector runs from to the key's IP access list. If the role has control-plane:organization:manage, also give the key an expiry date.
  4. Keep the key ID and the key secret for step 3.

A key created through the Cloud API with no IP access list cannot be used from any address.

2. Create the database user in each service

Skip this step to read only the console, and leave services out of the configuration.

Run these statements as the default user in each service the collector reads, with a password you generate in place of YOUR-PASSWORD. Use the same password in every service.

CREATE ROLE IF NOT EXISTS epack_access_reader;
GRANT CURRENT GRANTS(SHOW ACCESS ON *.*) TO epack_access_reader;
GRANT SELECT ON system.grants TO epack_access_reader;
GRANT SELECT ON system.role_grants TO epack_access_reader;
GRANT SELECT ON system.settings_profile_elements TO epack_access_reader;
GRANT SELECT ON system.quota_limits TO epack_access_reader;
CREATE USER IF NOT EXISTS epack_collector IDENTIFIED WITH sha256_password BY 'YOUR-PASSWORD' SETTINGS readonly = 1;
GRANT epack_access_reader TO epack_collector;

ClickHouse Cloud refuses GRANT SHOW ACCESS ON *.* from the default user. GRANT CURRENT GRANTS passes on the part of it the default user holds.

Add every address the collector runs from to each service's IP access list, under the service's Settings.

3. Configure epack

collectors:
  clickhouse:
    source: locktivity/epack-collector-clickhouse@^0.1
    config:
      organization_id: 8c1f2a4e-5b6d-4e7f-9a0b-1c2d3e4f5a6b
      services:
        - host: abc123xyz.us-east-1.aws.clickhouse.cloud
      level: audit
    secrets:
      - CLICKHOUSE_KEY_ID
      - CLICKHOUSE_KEY_SECRET
      - CLICKHOUSE_DB_PASSWORD
export CLICKHOUSE_KEY_ID=YOUR-KEY-ID CLICKHOUSE_KEY_SECRET=YOUR-KEY-SECRET CLICKHOUSE_DB_PASSWORD=YOUR-PASSWORD

Options

Option Required Description
organization_id Yes The organization's ID, from Organization details in the console.
services No The services whose database access the collector reads. Each has a host, the service's HTTPS host name without https:// or a port, and an optional user, which is epack_collector unless you set it. Leave services out to read only the console.
level No trust (the default), audit, or internal. See levels.md.
collect No The kinds of evidence to collect. details is artifacts/clickhouse.details.json, and access-posture is artifacts/clickhouse.access-posture.json. Leave it out to collect both. With only access-posture, the collector reads the members and API keys and skips the invitations, console roles, and services.

Environment Variables

Variable Description
CLICKHOUSE_KEY_ID The API key's ID.
CLICKHOUSE_KEY_SECRET The API key's secret.
CLICKHOUSE_DB_PASSWORD The database user's password. Required when services lists a service.

Idle Services

A service that has gone idle starts again when the collector's first query reaches it, which can take a minute or more. The collector waits up to three minutes for each service.

Partial Collection and Exit Codes

The run fails only when the configuration is invalid (exit 2), when the Cloud API rejects the key or refuses its address (exit 3), or when the Cloud API cannot be reached (exit 4). Every other read that fails leaves its values out of artifacts/clickhouse.details.json and artifacts/clickhouse.access-posture.json. artifacts/clickhouse.collector-result.json records a gap for each, with the call that failed and what to check.

Some values are left out every time their condition holds:

Value Code When
members permission_denied The key's role lacks control-plane:organization:manage.
console_roles permission_denied The key's role lacks control-plane:organization:manage.
organization.sso_enabled unsupported Always. ClickHouse Cloud has no API that reports SAML SSO.
members.mfa_enabled_count unsupported Whenever the members are read. ClickHouse Cloud has no API that reports a member's MFA.
members and admins in the access-posture file permission_denied The key's role lacks control-plane:organization:manage.
credentials in the access-posture file permission_denied The key's role lacks control-plane:organization:view-api-keys.
members.inactive_member_count and members.inactive_pct in the access-posture file not_read Always. They need ClickHouse Cloud's activities list, which the collector does not read.

The access-posture file also leaves out the values ClickHouse Cloud does not report, such as its sign-in rules, each with an unsupported gap. overview.md lists them. An unsupported or not_read gap does not make the run partial.

Basic Usage

Counts for the console and one service, at the default trust level:

collectors:
  clickhouse:
    source: locktivity/epack-collector-clickhouse@^0.1
    config:
      organization_id: 8c1f2a4e-5b6d-4e7f-9a0b-1c2d3e4f5a6b
      services:
        - host: abc123xyz.us-east-1.aws.clickhouse.cloud
    secrets:
      - CLICKHOUSE_KEY_ID
      - CLICKHOUSE_KEY_SECRET
      - CLICKHOUSE_DB_PASSWORD

With Inventories

At audit, for two services, the second read as a database user named evidence_reader:

collectors:
  clickhouse:
    source: locktivity/epack-collector-clickhouse@^0.1
    config:
      organization_id: 8c1f2a4e-5b6d-4e7f-9a0b-1c2d3e4f5a6b
      services:
        - host: abc123xyz.us-east-1.aws.clickhouse.cloud
        - host: def456uvw.eu-west-1.aws.clickhouse.cloud
          user: evidence_reader
      level: audit
    secrets:
      - CLICKHOUSE_KEY_ID
      - CLICKHOUSE_KEY_SECRET
      - CLICKHOUSE_DB_PASSWORD

Console Only

With no services, the collector reads only the Cloud API and needs no database password:

collectors:
  clickhouse:
    source: locktivity/epack-collector-clickhouse@^0.1
    config:
      organization_id: 8c1f2a4e-5b6d-4e7f-9a0b-1c2d3e4f5a6b
    secrets:
      - CLICKHOUSE_KEY_ID
      - CLICKHOUSE_KEY_SECRET

Example Output

With a key whose role has control-plane:organization:manage, at the trust level, artifacts/clickhouse.details.json holds:

{
  "schema_version": "1.0.0",
  "collected_at": "2026-10-22T12:00:00Z",
  "collected_at_level": "trust",
  "organization": {
    "id": "8c1f2a4e-5b6d-4e7f-9a0b-1c2d3e4f5a6b",
    "name": "Example Org",
    "created_at": "2026-10-21T13:58:12Z",
    "sso_enabled": null
  },
  "members": {"total_count": 4, "admin_count": 1, "mfa_enabled_count": null},
  "invitations": {"total_count": 2, "pending_count": 1, "expired_count": 1},
  "api_keys": {
    "total_count": 6,
    "enabled_count": 5,
    "admin_count": 1,
    "never_expires_count": 4,
    "any_address_count": 5,
    "never_used_count": 4
  },
  "console_roles": {"total_count": 4, "custom_count": 2},
  "services": [
    {
      "host": "abc123xyz.us-east-1.aws.clickhouse.cloud",
      "user": "epack_collector",
      "version": "26.8.1.2045",
      "users": {
        "customer_count": 9,
        "cloud_managed_count": 2,
        "no_password_count": 1,
        "plaintext_password_count": 1,
        "any_host_count": 7
      },
      "roles": {"customer_count": 3, "cloud_managed_count": 4},
      "role_grants": {"customer_count": 5, "cloud_managed_count": 2, "with_admin_option_count": 2},
      "grants": {"customer_count": 5, "cloud_managed_count": 3, "grant_option_count": 1},
      "settings_profiles": {"customer_count": 2, "cloud_managed_count": 1},
      "settings_profile_elements": {"customer_count": 4, "cloud_managed_count": 2},
      "quotas": {"customer_count": 1, "cloud_managed_count": 1},
      "quota_limits": {"customer_count": 1, "cloud_managed_count": 1},
      "row_policies": {"customer_count": 1, "cloud_managed_count": 0}
    }
  ]
}

sso_enabled and mfa_enabled_count are null because ClickHouse Cloud has no API that reports them, and artifacts/clickhouse.collector-result.json records a gap for each.

With a read-only key, members and console_roles are absent too, and the collector result records why:

"gaps": [
  {
    "path": "artifacts/clickhouse.details.json",
    "pointer": "/console_roles",
    "status": "not_collected",
    "code": "permission_denied",
    "owner": "customer",
    "vendor_code": "FORBIDDEN",
    "operation": "clickhouse.roles.list",
    "call": 6,
    "missing_permission": "control-plane:organization:manage",
    "warning": "Reading console role definitions needs control-plane:organization:manage, which can also change the organization."
  },
  {
    "path": "artifacts/clickhouse.details.json",
    "pointer": "/members",
    "status": "not_collected",
    "code": "permission_denied",
    "owner": "customer",
    "operation": "clickhouse.members.list",
    "call": 2,
    "missing_permission": "control-plane:organization:manage",
    "warning": "Reading members needs control-plane:organization:manage, which can also change the organization."
  },
  {"path": "artifacts/clickhouse.details.json", "pointer": "/organization/sso_enabled", "status": "not_collected", "code": "unsupported", "owner": "nobody"}
]

At the trust level, the same organization's artifacts/clickhouse.access-posture.json holds:

{
  "schema_version": "1.0.0",
  "collected_at": "2026-10-22T12:00:00Z",
  "provider": "clickhouse",
  "system_type": "database",
  "members": {"members_present": true},
  "admins": {"admins_present": true, "admin_share_pct": 25},
  "credentials": {
    "credentials_present": true,
    "never_expiring_pct": 60,
    "unused_pct": 60,
    "unrestricted_pct": 20,
    "write_access_pct": 20,
    "rotation_overdue_pct": 0
  }
}

Five of the six API keys are enabled, and none has expired, so the credentials cover five keys. At audit, the file also holds the count behind each percentage, such as credential_count and never_expiring_credential_count.

At audit, each count has its rows beside it. A database user's row:

{
  "name": "ops_admin",
  "storage": "replicated",
  "auth_methods": [
    {"type": "sha256_password", "valid_until": "2030-01-01T00:00:00Z", "second_factor": null}
  ],
  "no_password": false,
  "plaintext_password": false,
  "host_ip": ["::/0"],
  "host_names": [],
  "host_names_regexp": [],
  "host_names_like": [],
  "any_host": true
}

Clickhouse

Passed

A ClickHouse Cloud organization used only for these checks, with four members, a pending invitation, six API keys, and one service. The service has eight database users and three roles of the customer's, and a settings profile, a quota, and a row policy for its read-only role. ClickHouse Cloud's own users and roles are counted apart from the customer's. The collector reads at the audit level, the console with an API key that can manage the organization, and the service as a read-only database user.

Runs at Audit, which includes Trust. Internal isn't checked.

v0.1.0 · Nov 7, 2026 · 147 of 147 values matched

16 of 16 nights passed, Oct 23 to Nov 7.

Passed
Every value matched.
Failed
At least one value didn't match. The maintainers add a note when they know why.
Not run
The run didn't finish, or the test account had changed. It doesn't count for or against the collector.

What this account doesn't cover

  • ClickHouse Cloud has no API that reports SAML SSO or a member's MFA, so both are checked only as not collected.
  • One service. Organizations with several services aren't covered.
  • ClickHouse Cloud decides some counts itself, such as its own grants and its system console roles, so those are checked as minimums.
  • The collector's API key can manage the organization, so the sandbox does not check a read-only key, which can't list members or console roles.
See the checked values

How the checks work

A test account with known settings

The test account is set up only for these checks. Its settings are kept in code, so the value the collector should report for each field is known ahead of time.

Every night, and before every release

Every night at 05:00 UTC, the newest published version runs against the test account. Each value it reports is compared with the known value. New versions go through the same check before they're published.

What's withheld

Values that could identify a test account, such as its domain, IDs, or user logins, aren't shown here. They're still checked.

Raw results

The same results, with the same values withheld, are published as sandbox-results.json.

v0.2.0 Latest Passed Release check d7c7b85
2026-11-05

What's Changed

New Contributors

Full Changelog: https://github.com/locktivity/epack-collector-clickhouse/compare/v0.1.0...v0.2.0

darwin/amd64 darwin/arm64 linux/amd64 linux/arm64
v0.1.0 Passed Release check e86013c
2026-10-22

Nightly checks: 16 passed.

darwin/amd64 darwin/arm64 linux/amd64 linux/arm64

Field reference

412 fields. The test account checks 94 of them.

Summary values clickhouse.access-posture.json

The values Foundational Controls and other profiles read.

General 4 fields · from trust Not checked
Collected at collected_at
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The test account doesn't have a known value for this field.

Provider provider The system's vendor, such as github, aws, or clickhouse
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The system's vendor, such as github, aws, or clickhouse

The test account doesn't have a known value for this field.

Schema version schema_version
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The test account doesn't have a known value for this field.

System type system_type The kind of system
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
value

The kind of system

The test account doesn't have a known value for this field.

Admins 14 fields · 4 trust, 10 audit Not checked
Admin count admins.admin_count Admins
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Admins

The test account doesn't have a known value for this field.

Admin share admins.admin_share_pct Admins as a percentage of members. Null when there are no members
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
admins.1.members.member_count

Admins as a percentage of members. Null when there are no members

The test account doesn't have a known value for this field.

Admins present admins.admins_present Whether the system has any admins
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the system has any admins

The test account doesn't have a known value for this field.

Local admin count admins.local_admin_count Admins who can sign in without SSO. An admin linked to SSO counts when the system still lets them sign in another way
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Admins who can sign in without SSO. An admin linked to SSO counts when the system still lets them sign in another way

The test account doesn't have a known value for this field.

Local admin MFA coverage admins.local_admin_mfa_coverage_pct Percentage of admins who can sign in without SSO and have MFA. Null when no admin can sign in without SSO
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
admins.local_admin_count

Percentage of admins who can sign in without SSO and have MFA. Null when no admin can sign in without SSO

The test account doesn't have a known value for this field.

Local admins present admins.local_admins_present Whether any admins can sign in without SSO. An admin linked to SSO counts too when the system still lets them sign in another way. When f...
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether any admins can sign in without SSO. An admin linked to SSO counts too when the system still lets them sign in another way. When false, local_admin_mfa_coverage_pct has no admins to count

The test account doesn't have a known value for this field.

Local MFA admin count admins.local_mfa_admin_count Admins counted in local_admin_count who have MFA
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Admins counted in local_admin_count who have MFA

The test account doesn't have a known value for this field.

Admin count scopes[].admins.admin_count Admins
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Admins

The test account doesn't have a known value for this field.

Admin share scopes[].admins.admin_share_pct Admins as a percentage of members. Null when there are no members
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].admins.1.members.member_count

Admins as a percentage of members. Null when there are no members

The test account doesn't have a known value for this field.

Admins present scopes[].admins.admins_present Whether the system has any admins
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether the system has any admins

The test account doesn't have a known value for this field.

Local admin count scopes[].admins.local_admin_count Admins who can sign in without SSO. An admin linked to SSO counts when the system still lets them sign in another way
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Admins who can sign in without SSO. An admin linked to SSO counts when the system still lets them sign in another way

The test account doesn't have a known value for this field.

Local admin MFA coverage scopes[].admins.local_admin_mfa_coverage_pct Percentage of admins who can sign in without SSO and have MFA. Null when no admin can sign in without SSO
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].admins.local_admin_count

Percentage of admins who can sign in without SSO and have MFA. Null when no admin can sign in without SSO

The test account doesn't have a known value for this field.

Local admins present scopes[].admins.local_admins_present Whether any admins can sign in without SSO. An admin linked to SSO counts too when the system still lets them sign in another way. When f...
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether any admins can sign in without SSO. An admin linked to SSO counts too when the system still lets them sign in another way. When false, local_admin_mfa_coverage_pct has no admins to count

The test account doesn't have a known value for this field.

Local MFA admin count scopes[].admins.local_mfa_admin_count Admins counted in local_admin_count who have MFA
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Admins counted in local_admin_count who have MFA

The test account doesn't have a known value for this field.

Connected apps 2 fields · 1 trust, 1 audit Not checked
App count connected_apps.app_count Third-party apps with access
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Third-party apps with access

The test account doesn't have a known value for this field.

Apps present connected_apps.apps_present Whether any third-party app has access
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether any third-party app has access

The test account doesn't have a known value for this field.

Credentials 24 fields · 6 trust, 18 audit Not checked
Credential count credentials.credential_count Machine credentials
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Machine credentials

The test account doesn't have a known value for this field.

Credentials present credentials.credentials_present Whether the system has any machine credentials. When false, the credential percentages have none to count
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the system has any machine credentials. When false, the credential percentages have none to count

The test account doesn't have a known value for this field.

Never expiring credential count credentials.never_expiring_credential_count Credentials that never expire
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Credentials that never expire

The test account doesn't have a known value for this field.

Never expiring credentials.never_expiring_pct Percentage of credentials that never expire. Null when there are none
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
credentials.credential_count

Percentage of credentials that never expire. Null when there are none

The test account doesn't have a known value for this field.

Rotation overdue credential count credentials.rotation_overdue_credential_count Credentials older than 90 days. When the system does not record when a credential was created, this is left out with a gap
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Credentials older than 90 days. When the system does not record when a credential was created, this is left out with a gap

The test account doesn't have a known value for this field.

Rotation overdue credentials.rotation_overdue_pct Percentage of credentials older than 90 days. Left out with a gap when the system does not record when a credential was created. Null whe...
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
credentials.credential_count

Percentage of credentials older than 90 days. Left out with a gap when the system does not record when a credential was created. Null when there are none

The test account doesn't have a known value for this field.

Unrestricted credential count credentials.unrestricted_credential_count Credentials with neither an IP limit nor a scope narrower than full access. A credential limited to chosen permissions or resources has a...
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Credentials with neither an IP limit nor a scope narrower than full access. A credential limited to chosen permissions or resources has a narrower scope. A credential with either limit is restricted

The test account doesn't have a known value for this field.

Unrestricted credentials.unrestricted_pct Percentage of credentials with neither an IP limit nor a scope narrower than full access. Null when there are none
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
credentials.credential_count

Percentage of credentials with neither an IP limit nor a scope narrower than full access. Null when there are none

The test account doesn't have a known value for this field.

Unused credential count credentials.unused_credential_count Credentials never used, or unused in the last 90 days
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Credentials never used, or unused in the last 90 days

The test account doesn't have a known value for this field.

Unused credentials.unused_pct Percentage of credentials never used, or unused in the last 90 days. Null when there are none
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
credentials.credential_count

Percentage of credentials never used, or unused in the last 90 days. Null when there are none

The test account doesn't have a known value for this field.

Write access credential count credentials.write_access_credential_count Credentials that can write or administer
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Credentials that can write or administer

The test account doesn't have a known value for this field.

Write access credentials.write_access_pct Percentage of credentials that can write or administer. Null when there are none
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
credentials.credential_count

Percentage of credentials that can write or administer. Null when there are none

The test account doesn't have a known value for this field.

Credential count scopes[].credentials.credential_count Machine credentials
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Machine credentials

The test account doesn't have a known value for this field.

Credentials present scopes[].credentials.credentials_present Whether the system has any machine credentials. When false, the credential percentages have none to count
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether the system has any machine credentials. When false, the credential percentages have none to count

The test account doesn't have a known value for this field.

Never expiring credential count scopes[].credentials.never_expiring_credential_count Credentials that never expire
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Credentials that never expire

The test account doesn't have a known value for this field.

Never expiring scopes[].credentials.never_expiring_pct Percentage of credentials that never expire. Null when there are none
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].credentials.credential_count

Percentage of credentials that never expire. Null when there are none

The test account doesn't have a known value for this field.

Rotation overdue credential count scopes[].credentials.rotation_overdue_credential_count Credentials older than 90 days. When the system does not record when a credential was created, this is left out with a gap
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Credentials older than 90 days. When the system does not record when a credential was created, this is left out with a gap

The test account doesn't have a known value for this field.

Rotation overdue scopes[].credentials.rotation_overdue_pct Percentage of credentials older than 90 days. Left out with a gap when the system does not record when a credential was created. Null whe...
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].credentials.credential_count

Percentage of credentials older than 90 days. Left out with a gap when the system does not record when a credential was created. Null when there are none

The test account doesn't have a known value for this field.

Unrestricted credential count scopes[].credentials.unrestricted_credential_count Credentials with neither an IP limit nor a scope narrower than full access. A credential limited to chosen permissions or resources has a...
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Credentials with neither an IP limit nor a scope narrower than full access. A credential limited to chosen permissions or resources has a narrower scope. A credential with either limit is restricted

The test account doesn't have a known value for this field.

Unrestricted scopes[].credentials.unrestricted_pct Percentage of credentials with neither an IP limit nor a scope narrower than full access. Null when there are none
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].credentials.credential_count

Percentage of credentials with neither an IP limit nor a scope narrower than full access. Null when there are none

The test account doesn't have a known value for this field.

Unused credential count scopes[].credentials.unused_credential_count Credentials never used, or unused in the last 90 days
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Credentials never used, or unused in the last 90 days

The test account doesn't have a known value for this field.

Unused scopes[].credentials.unused_pct Percentage of credentials never used, or unused in the last 90 days. Null when there are none
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].credentials.credential_count

Percentage of credentials never used, or unused in the last 90 days. Null when there are none

The test account doesn't have a known value for this field.

Write access credential count scopes[].credentials.write_access_credential_count Credentials that can write or administer
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Credentials that can write or administer

The test account doesn't have a known value for this field.

Write access scopes[].credentials.write_access_pct Percentage of credentials that can write or administer. Null when there are none
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].credentials.credential_count

Percentage of credentials that can write or administer. Null when there are none

The test account doesn't have a known value for this field.

Members 24 fields · 6 trust, 18 audit Not checked
External member count members.external_member_count Members from outside the organization
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members from outside the organization

The test account doesn't have a known value for this field.

External members present members.external_members_present Whether any members come from outside the organization, such as outside collaborators or guests
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether any members come from outside the organization, such as outside collaborators or guests

The test account doesn't have a known value for this field.

Inactive member count members.inactive_member_count Members with no sign-in or other recorded activity in the last 90 days
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members with no sign-in or other recorded activity in the last 90 days

The test account doesn't have a known value for this field.

Inactive members.inactive_pct Percentage of members with no sign-in or other recorded activity in the last 90 days. Null when there are no members
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
members.member_count

Percentage of members with no sign-in or other recorded activity in the last 90 days. Null when there are no members

The test account doesn't have a known value for this field.

Local member count members.local_member_count Members who can sign in without SSO. A member linked to SSO counts when the system still lets them sign in another way
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members who can sign in without SSO. A member linked to SSO counts when the system still lets them sign in another way

The test account doesn't have a known value for this field.

Local members present members.local_members_present Whether any members can sign in without SSO, with a password or a social login. A member linked to SSO counts too when the system still l...
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether any members can sign in without SSO, with a password or a social login. A member linked to SSO counts too when the system still lets them sign in another way, so local and SSO members can overlap. When false, local_mfa_coverage_pct has no members to count

The test account doesn't have a known value for this field.

Local MFA coverage members.local_mfa_coverage_pct Percentage of members who can sign in without SSO and have MFA. Null when no member can sign in without SSO
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
members.local_member_count

Percentage of members who can sign in without SSO and have MFA. Null when no member can sign in without SSO

The test account doesn't have a known value for this field.

Local MFA member count members.local_mfa_member_count Members counted in local_member_count who have MFA
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members counted in local_member_count who have MFA

The test account doesn't have a known value for this field.

Member count members.member_count Members
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members

The test account doesn't have a known value for this field.

Members present members.members_present Whether the system has any members. When false, the member percentages have no members to count
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the system has any members. When false, the member percentages have no members to count

The test account doesn't have a known value for this field.

SSO coverage members.sso_coverage_pct Percentage of members whose account is linked to SSO. Null when there are no members
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
members.member_count

Percentage of members whose account is linked to SSO. Null when there are no members

The test account doesn't have a known value for this field.

SSO member count members.sso_member_count Members whose account is linked to SSO
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members whose account is linked to SSO

The test account doesn't have a known value for this field.

External member count scopes[].members.external_member_count Members from outside the organization
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members from outside the organization

The test account doesn't have a known value for this field.

External members present scopes[].members.external_members_present Whether any members come from outside the organization, such as outside collaborators or guests
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether any members come from outside the organization, such as outside collaborators or guests

The test account doesn't have a known value for this field.

Inactive member count scopes[].members.inactive_member_count Members with no sign-in or other recorded activity in the last 90 days
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members with no sign-in or other recorded activity in the last 90 days

The test account doesn't have a known value for this field.

Inactive scopes[].members.inactive_pct Percentage of members with no sign-in or other recorded activity in the last 90 days. Null when there are no members
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].members.member_count

Percentage of members with no sign-in or other recorded activity in the last 90 days. Null when there are no members

The test account doesn't have a known value for this field.

Local member count scopes[].members.local_member_count Members who can sign in without SSO. A member linked to SSO counts when the system still lets them sign in another way
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members who can sign in without SSO. A member linked to SSO counts when the system still lets them sign in another way

The test account doesn't have a known value for this field.

Local members present scopes[].members.local_members_present Whether any members can sign in without SSO, with a password or a social login. A member linked to SSO counts too when the system still l...
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether any members can sign in without SSO, with a password or a social login. A member linked to SSO counts too when the system still lets them sign in another way, so local and SSO members can overlap. When false, local_mfa_coverage_pct has no members to count

The test account doesn't have a known value for this field.

Local MFA coverage scopes[].members.local_mfa_coverage_pct Percentage of members who can sign in without SSO and have MFA. Null when no member can sign in without SSO
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].members.local_member_count

Percentage of members who can sign in without SSO and have MFA. Null when no member can sign in without SSO

The test account doesn't have a known value for this field.

Local MFA member count scopes[].members.local_mfa_member_count Members counted in local_member_count who have MFA
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members counted in local_member_count who have MFA

The test account doesn't have a known value for this field.

Member count scopes[].members.member_count Members
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members

The test account doesn't have a known value for this field.

Members present scopes[].members.members_present Whether the system has any members. When false, the member percentages have no members to count
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether the system has any members. When false, the member percentages have no members to count

The test account doesn't have a known value for this field.

SSO coverage scopes[].members.sso_coverage_pct Percentage of members whose account is linked to SSO. Null when there are no members
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].members.member_count

Percentage of members whose account is linked to SSO. Null when there are no members

The test account doesn't have a known value for this field.

SSO member count scopes[].members.sso_member_count Members whose account is linked to SSO
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Members whose account is linked to SSO

The test account doesn't have a known value for this field.

Root 10 fields · 3 trust, 7 audit Not checked
Root access keys present root.root_access_keys_present Whether any root account has access keys
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether any root account has access keys

The test account doesn't have a known value for this field.

Root account count root.root_account_count Root accounts. A system with scopes has one per scope
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Root accounts. A system with scopes has one per scope

The test account doesn't have a known value for this field.

Root accounts present root.root_accounts_present Whether the system has a built-in root account. When false, root_mfa_coverage_pct has no accounts to count
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the system has a built-in root account. When false, root_mfa_coverage_pct has no accounts to count

The test account doesn't have a known value for this field.

Root MFA account count root.root_mfa_account_count Root accounts with MFA
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Root accounts with MFA

The test account doesn't have a known value for this field.

Root MFA coverage root.root_mfa_coverage_pct Percentage of root accounts with MFA. Null when there are none
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
number, can be null
Counted over
root.root_account_count

Percentage of root accounts with MFA. Null when there are none

The test account doesn't have a known value for this field.

Root access keys present scopes[].root.root_access_keys_present Whether any root account has access keys
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether any root account has access keys

The test account doesn't have a known value for this field.

Root account count scopes[].root.root_account_count Root accounts. A system with scopes has one per scope
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Root accounts. A system with scopes has one per scope

The test account doesn't have a known value for this field.

Root accounts present scopes[].root.root_accounts_present Whether the system has a built-in root account. When false, root_mfa_coverage_pct has no accounts to count
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether the system has a built-in root account. When false, root_mfa_coverage_pct has no accounts to count

The test account doesn't have a known value for this field.

Root MFA account count scopes[].root.root_mfa_account_count Root accounts with MFA
Audit
Not checked
Collected in
Audit and internal runs
Type
integer, can be null

Root accounts with MFA

The test account doesn't have a known value for this field.

Root MFA coverage scopes[].root.root_mfa_coverage_pct Percentage of root accounts with MFA. Null when there are none
Audit
Not checked
Collected in
Audit and internal runs
Type
number, can be null
Counted over
scopes[].root.root_account_count

Percentage of root accounts with MFA. Null when there are none

The test account doesn't have a known value for this field.

Scopes 3 fields · from audit Not checked
ID scopes[].id The account or subscription ID
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The account or subscription ID

The test account doesn't have a known value for this field.

Kind scopes[].kind
Audit
Not checked
Collected in
Audit and internal runs
Type
value

The test account doesn't have a known value for this field.

Name scopes[].name The account or subscription name
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The account or subscription name

The test account doesn't have a known value for this field.

Sign in 8 fields · 4 trust, 4 audit Not checked
MFA required scopes[].sign_in.mfa_required Whether the system requires MFA from anyone who signs in without SSO
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether the system requires MFA from anyone who signs in without SSO

The test account doesn't have a known value for this field.

SCIM enabled scopes[].sign_in.scim_enabled Whether accounts are created and removed through SCIM
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether accounts are created and removed through SCIM

The test account doesn't have a known value for this field.

SSO configured scopes[].sign_in.sso_configured Whether SSO is set up for the system
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether SSO is set up for the system

The test account doesn't have a known value for this field.

SSO required scopes[].sign_in.sso_required Whether everyone must sign in through SSO
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null

Whether everyone must sign in through SSO

The test account doesn't have a known value for this field.

MFA required sign_in.mfa_required Whether the system requires MFA from anyone who signs in without SSO
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether the system requires MFA from anyone who signs in without SSO

The test account doesn't have a known value for this field.

SCIM enabled sign_in.scim_enabled Whether accounts are created and removed through SCIM
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether accounts are created and removed through SCIM

The test account doesn't have a known value for this field.

SSO configured sign_in.sso_configured Whether SSO is set up for the system
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether SSO is set up for the system

The test account doesn't have a known value for this field.

SSO required sign_in.sso_required Whether everyone must sign in through SSO
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether everyone must sign in through SSO

The test account doesn't have a known value for this field.

Detailed output clickhouse.collector-build.json

Everything this collector reads, grouped by area. Each field lists the lowest level that collects it. Its schema isn't published yet, so only the checked fields are listed.

Collector 2 fields All 2 checked fields match
Name collector.name Not in the published schema yet
Not documented
clickhouse
Collected in
Not documented in the schema
Type
value

Not in the published schema yet. The checks below name the paths as the collector writes them.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
collector.name"clickhouse""clickhouse"Matches
Version collector.version Not in the published schema yet
Not documented
Withheld
Collected in
Not documented in the schema
Type
value

Not in the published schema yet. The checks below name the paths as the collector writes them.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
collector.versionthe same as artifacts/clickhouse.collector-result.json /collector/version, which is "0.1.0"withheldMatches
Schemas 1 field Checked field matches
Artifacts/clickhouse.json schemas.artifacts/clickhouse.json Not in the published schema yet
Not documented
Present, value withheld
Collected in
Not documented in the schema
Type
value

Not in the published schema yet. The checks below name the paths as the collector writes them.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
schemas.artifacts/clickhouse.jsonany valueany valueMatches
Trace map 1 field Checked field matches
Operations trace_map.artifacts.artifacts/clickhouse.json./members/total_count.operations Not in the published schema yet
Not documented
["clickhouse.members.list"]
Collected in
Not documented in the schema
Type
value

Not in the published schema yet. The checks below name the paths as the collector writes them.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
trace_map.artifacts.artifacts/clickhouse.json./members/total_count.operations["clickhouse.members.list"]["clickhouse.members.list"]Matches

Detailed output clickhouse.details.json

Everything this collector reads, grouped by area. Each field lists the lowest level that collects it.

General 3 fields · from trust All 2 checked fields match
Collected at collected_at When the collector ran.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

When the collector ran.

The test account doesn't have a known value for this field.

Collected at level collected_at_level The collection level the artifact was made at. audit adds the inventories to trust's counts, and internal adds nothing more.
Trust
audit
Collected in
Trust, audit, and internal runs
Type
string

The collection level the artifact was made at. audit adds the inventories to trust's counts, and internal adds nothing more.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
collected_at_level"audit""audit"Matches
Schema version schema_version The version of this schema.
Trust
1.0.0
Collected in
Trust, audit, and internal runs
Type
string

The version of this schema.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
schema_version"1.0.0""1.0.0"Matches
API keys 20 fields · 6 trust, 14 audit All 15 checked fields match
Admin count api_keys.admin_count API keys that hold the Admin role, enabled or not.
Trust
1
Collected in
Trust, audit, and internal runs
Type
integer

API keys that hold the Admin role, enabled or not.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.admin_count11Matches
Any address count api_keys.any_address_count API keys whose IP access list admits any address, enabled or not.
Trust
5
Collected in
Trust, audit, and internal runs
Type
integer

API keys whose IP access list admits any address, enabled or not.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.any_address_count55Matches

In the test account: Five of the six keys can be used from any address.

Enabled count api_keys.enabled_count Enabled API keys.
Trust
5
Collected in
Trust, audit, and internal runs
Type
integer

Enabled API keys.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.enabled_count55Matches
Inventory api_keys.inventory Every API key, sorted by name.
Audit
No more than 6 rows
Collected in
Audit and internal runs
Type
list

Every API key, sorted by name.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.inventory[6]left outleft outMatches
Admin api_keys.inventory[].admin Whether the key holds the Admin role.
Audit
Yes
Collected in
Audit and internal runs
Type
boolean

Whether the key holds the Admin role.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.inventory[1].admintruetrueMatches
Any address api_keys.inventory[].any_address Whether the key's IP access list holds 0.0.0.0/0.
Audit
No
Collected in
Audit and internal runs
Type
boolean

Whether the key's IP access list holds 0.0.0.0/0.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.inventory[5].any_addressfalsefalseMatches
Created at api_keys.inventory[].created_at When the key was created. Null when the API does not say.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

When the key was created. Null when the API does not say.

The test account doesn't have a known value for this field.

Expires at api_keys.inventory[].expires_at When the key expires. Null when it never expires.
Audit
3 values match
Collected in
Audit and internal runs
Type
string, can be null

When the key expires. Null when it never expires.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.inventory[0].expires_atnullnullMatches
api_keys.inventory[1].expires_atnullnullMatches
api_keys.inventory[4].expires_at"2030-01-01T00:00:00Z""2030-01-01T00:00:00Z"Matches
IP access list api_keys.inventory[].ip_access_list The addresses and ranges the key may be used from. 0.0.0.0/0 admits any address.
Audit
2 values match
Collected in
Audit and internal runs
Type
list of strings

The addresses and ranges the key may be used from. 0.0.0.0/0 admits any address.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.inventory[0].ip_access_list["0.0.0.0/0"]["0.0.0.0/0"]Matches
api_keys.inventory[5].ip_access_list["203.0.113.0/24"]["203.0.113.0/24"]Matches
Last used at api_keys.inventory[].last_used_at When the key was last used, to the minute. Null when it has never been used.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

When the key was last used, to the minute. Null when it has never been used.

The test account doesn't have a known value for this field.

Name api_keys.inventory[].name The key's name.
Audit
6 values match
Collected in
Audit and internal runs
Type
string

The key's name.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.inventory[0].name"epack-collector""epack-collector"Matches
api_keys.inventory[1].name"sandbox-admin""sandbox-admin"Matches
api_keys.inventory[2].name"sandbox-auditor""sandbox-auditor"Matches
api_keys.inventory[3].name"sandbox-disabled""sandbox-disabled"Matches
api_keys.inventory[4].name"sandbox-expiring""sandbox-expiring"Matches
api_keys.inventory[5].name"sandbox-ip-limited""sandbox-ip-limited"Matches
Never expires api_keys.inventory[].never_expires Whether the key has no expiry date.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the key has no expiry date.

The test account doesn't have a known value for this field.

Never used api_keys.inventory[].never_used Whether the key has never been used.
Audit
3 values match
Collected in
Audit and internal runs
Type
boolean

Whether the key has never been used.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.inventory[0].never_usedfalsefalseMatches
api_keys.inventory[1].never_usedfalsefalseMatches
api_keys.inventory[2].never_usedtruetrueMatches
Roles api_keys.inventory[].roles The console roles assigned to the key.
Audit
4 values match
Collected in
Audit and internal runs
Type
list

The console roles assigned to the key.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.inventory[0].roles[{"name":"epack-collector","type":"custom"}][{"name":"epack-collector","type":"custom"}]Matches
api_keys.inventory[2].roles[{"name":"sandbox-auditor","type":"custom"}][{"name":"sandbox-auditor","type":"custom"}]Matches
api_keys.inventory[3].roles[][]Matches
api_keys.inventory[4].roles[][]Matches
Name api_keys.inventory[].roles[].name The role's name, such as Admin or a custom role's name.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The role's name, such as Admin or a custom role's name.

The test account doesn't have a known value for this field.

Type api_keys.inventory[].roles[].type system for a role ClickHouse Cloud defines, custom for one the organization made.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

system for a role ClickHouse Cloud defines, custom for one the organization made.

The test account doesn't have a known value for this field.

State api_keys.inventory[].state Whether the key is enabled.
Audit
disabled
Collected in
Audit and internal runs
Type
string

Whether the key is enabled.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.inventory[3].state"disabled""disabled"Matches
Never expires count api_keys.never_expires_count API keys with no expiry date, enabled or not.
Trust
5
Collected in
Trust, audit, and internal runs
Type
integer

API keys with no expiry date, enabled or not.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.never_expires_count55Matches

In the test account: Five of the six keys never expire.

Never used count api_keys.never_used_count API keys that have never been used, enabled or not.
Trust
4
Collected in
Trust, audit, and internal runs
Type
integer

API keys that have never been used, enabled or not.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.never_used_count44Matches

In the test account: Only the admin key and the collector's key are used, every night.

Total count api_keys.total_count API keys, enabled or not.
Trust
6
Collected in
Trust, audit, and internal runs
Type
integer

API keys, enabled or not.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
api_keys.total_count66Matches
Console roles 11 fields · 2 trust, 9 audit All 2 checked fields match
Custom count console_roles.custom_count Custom console roles.
Trust
2
Collected in
Trust, audit, and internal runs
Type
integer

Custom console roles.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
console_roles.custom_count22Matches
API key count console_roles.inventory[].api_key_count API keys that hold the role.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

API keys that hold the role.

The test account doesn't have a known value for this field.

Member count console_roles.inventory[].member_count Members who hold the role.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

Members who hold the role.

The test account doesn't have a known value for this field.

Name console_roles.inventory[].name The role's name.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The role's name.

The test account doesn't have a known value for this field.

Allow deny console_roles.inventory[].policies[].allow_deny ALLOW or DENY.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

ALLOW or DENY.

The test account doesn't have a known value for this field.

Permissions console_roles.inventory[].policies[].permissions The permissions the policy allows or denies, such as control-plane:organization:view.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The permissions the policy allows or denies, such as control-plane:organization:view.

The test account doesn't have a known value for this field.

Resources console_roles.inventory[].policies[].resources What the permissions apply to, such as organization/<id> or instance/*.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

What the permissions apply to, such as organization/<id> or instance/*.

The test account doesn't have a known value for this field.

Grants console_roles.inventory[].policies[].tags.grants The policy's tags.grants, a list of database grants such as database names. Null when the policy has no such tag.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings, can be null

The policy's tags.grants, a list of database grants such as database names. Null when the policy has no such tag.

The test account doesn't have a known value for this field.

Role v2 console_roles.inventory[].policies[].tags.role_v2 The policy's tags.roleV2. sql-console-readonly means read-only SQL console access to the service's databases, and sql-console-admin means...
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The policy's tags.roleV2. sql-console-readonly means read-only SQL console access to the service's databases, and sql-console-admin means admin access. Null when the policy has no such tag.

The test account doesn't have a known value for this field.

Type console_roles.inventory[].type system or custom.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

system or custom.

The test account doesn't have a known value for this field.

Total count console_roles.total_count Console roles, system and custom.
Trust
12
Collected in
Trust, audit, and internal runs
Type
integer

Console roles, system and custom.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
console_roles.total_countat least 1212Matches
Grants 24 fields · 3 trust, 21 audit All 4 checked fields match
Access object services[].grants.cloud_managed[].access_object The source of a READ or WRITE grant, such as S3, or the user of a SET DEFINER grant. It is an empty string for every source or user, and...
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The source of a READ or WRITE grant, such as S3, or the user of a SET DEFINER grant. It is an empty string for every source or user, and for any other privilege. Null when the server runs a ClickHouse version older than 25.8, which has no access_object column.

The test account doesn't have a known value for this field.

Access type services[].grants.cloud_managed[].access_type The privilege, such as SELECT or CREATE USER.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The privilege, such as SELECT or CREATE USER.

The test account doesn't have a known value for this field.

Column services[].grants.cloud_managed[].column The column it applies to. Null for every column.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The column it applies to. Null for every column.

The test account doesn't have a known value for this field.

Database services[].grants.cloud_managed[].database The database it applies to. Null for every database.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The database it applies to. Null for every database.

The test account doesn't have a known value for this field.

Grant option services[].grants.cloud_managed[].grant_option Whether the grantee may grant the privilege to others.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the grantee may grant the privilege to others.

The test account doesn't have a known value for this field.

Is partial revoke services[].grants.cloud_managed[].is_partial_revoke Whether the row revokes part of a broader grant.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the row revokes part of a broader grant.

The test account doesn't have a known value for this field.

Is wildcard services[].grants.cloud_managed[].is_wildcard Whether the grant names a prefix, as in sales*.* or sales.order*. The prefix is in table, or in database when table is null, and the gran...
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null
Null means
The service runs a ClickHouse version older than 26.7, which has no is_wildcard column.

Whether the grant names a prefix, as in sales*.* or sales.order*. The prefix is in table, or in database when table is null, and the grant covers every name that starts with it. Null when the server runs a ClickHouse version older than 26.7, which has no is_wildcard column.

The test account doesn't have a known value for this field.

Role name services[].grants.cloud_managed[].role_name The role the privilege is granted to. Null when it is granted to a user.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The role the privilege is granted to. Null when it is granted to a user.

The test account doesn't have a known value for this field.

Table services[].grants.cloud_managed[].table The table it applies to. Null for every table.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The table it applies to. Null for every table.

The test account doesn't have a known value for this field.

User name services[].grants.cloud_managed[].user_name The user the privilege is granted to. Null when it is granted to a role.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The user the privilege is granted to. Null when it is granted to a role.

The test account doesn't have a known value for this field.

Cloud managed count services[].grants.cloud_managed_count ClickHouse Cloud's own grants.
Trust
168
Collected in
Trust, audit, and internal runs
Type
integer

ClickHouse Cloud's own grants.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].grants.cloud_managed_countat least 1168Matches
Customer count services[].grants.customer_count The customer's grants.
Trust
14
Collected in
Trust, audit, and internal runs
Type
integer

The customer's grants.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].grants.customer_countat least 1114Matches
Grant option count services[].grants.grant_option_count Grants to the customer's users and roles that let the grantee grant the privilege to others.
Trust
1
Collected in
Trust, audit, and internal runs
Type
integer

Grants to the customer's users and roles that let the grantee grant the privilege to others.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].grants.grant_option_count11Matches

In the test account: One grant, SELECT on one table, lets its user pass it on.

Inventory services[].grants.inventory The privileges of the customer's users and roles, and each part of one revoked again.
Audit
{"access_type":"SELECT","column":null,"database":"app","grant_option":true,"is_partial_revoke":false,"role_name":null,"t...
Collected in
Audit and internal runs
Type
list

The privileges of the customer's users and roles, and each part of one revoked again.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].grants.inventory[0]{"access_type":"SELECT","column":null,"database":"app","grant_option":true,"is_partial_revoke":false,"role_name":null,"t...{"access_type":"SELECT","column":null,"database":"app","grant_option":true,"is_partial_revoke":false,"role_name":null,"t...Matches
Access object services[].grants.inventory[].access_object The source of a READ or WRITE grant, such as S3, or the user of a SET DEFINER grant. It is an empty string for every source or user, and...
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The source of a READ or WRITE grant, such as S3, or the user of a SET DEFINER grant. It is an empty string for every source or user, and for any other privilege. Null when the server runs a ClickHouse version older than 25.8, which has no access_object column.

The test account doesn't have a known value for this field.

Access type services[].grants.inventory[].access_type The privilege, such as SELECT or CREATE USER.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The privilege, such as SELECT or CREATE USER.

The test account doesn't have a known value for this field.

Column services[].grants.inventory[].column The column it applies to. Null for every column.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The column it applies to. Null for every column.

The test account doesn't have a known value for this field.

Database services[].grants.inventory[].database The database it applies to. Null for every database.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The database it applies to. Null for every database.

The test account doesn't have a known value for this field.

Grant option services[].grants.inventory[].grant_option Whether the grantee may grant the privilege to others.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the grantee may grant the privilege to others.

The test account doesn't have a known value for this field.

Is partial revoke services[].grants.inventory[].is_partial_revoke Whether the row revokes part of a broader grant.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the row revokes part of a broader grant.

The test account doesn't have a known value for this field.

Is wildcard services[].grants.inventory[].is_wildcard Whether the grant names a prefix, as in sales*.* or sales.order*. The prefix is in table, or in database when table is null, and the gran...
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean, can be null
Null means
The service runs a ClickHouse version older than 26.7, which has no is_wildcard column.

Whether the grant names a prefix, as in sales*.* or sales.order*. The prefix is in table, or in database when table is null, and the grant covers every name that starts with it. Null when the server runs a ClickHouse version older than 26.7, which has no is_wildcard column.

The test account doesn't have a known value for this field.

Role name services[].grants.inventory[].role_name The role the privilege is granted to. Null when it is granted to a user.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The role the privilege is granted to. Null when it is granted to a user.

The test account doesn't have a known value for this field.

Table services[].grants.inventory[].table The table it applies to. Null for every table.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The table it applies to. Null for every table.

The test account doesn't have a known value for this field.

User name services[].grants.inventory[].user_name The user the privilege is granted to. Null when it is granted to a role.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The user the privilege is granted to. Null when it is granted to a role.

The test account doesn't have a known value for this field.

Invitations 10 fields · 3 trust, 7 audit All 4 checked fields match
Expired count invitations.expired_count Invitations that expired before anyone accepted them.
Trust
0
Collected in
Trust, audit, and internal runs
Type
integer

Invitations that expired before anyone accepted them.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
invitations.expired_count00Matches
Created at invitations.inventory[].created_at When the invitation was sent. Null when the API does not say.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

When the invitation was sent. Null when the API does not say.

The test account doesn't have a known value for this field.

Email invitations.inventory[].email The address the invitation was sent to.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The address the invitation was sent to.

The test account doesn't have a known value for this field.

Expired invitations.inventory[].expired Whether the invitation had expired when the collector ran.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the invitation had expired when the collector ran.

The test account doesn't have a known value for this field.

Expires at invitations.inventory[].expires_at When the invitation expires.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

When the invitation expires.

The test account doesn't have a known value for this field.

Roles invitations.inventory[].roles The console roles the invitation assigns.
Audit
[{"name":"Member","type":"system"}]
Collected in
Audit and internal runs
Type
list

The console roles the invitation assigns.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
invitations.inventory[0].roles[{"name":"Member","type":"system"}][{"name":"Member","type":"system"}]Matches
Name invitations.inventory[].roles[].name The role's name, such as Admin or a custom role's name.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The role's name, such as Admin or a custom role's name.

The test account doesn't have a known value for this field.

Type invitations.inventory[].roles[].type system for a role ClickHouse Cloud defines, custom for one the organization made.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

system for a role ClickHouse Cloud defines, custom for one the organization made.

The test account doesn't have a known value for this field.

Pending count invitations.pending_count Invitations that have not been accepted and have not expired.
Trust
1
Collected in
Trust, audit, and internal runs
Type
integer

Invitations that have not been accepted and have not expired.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
invitations.pending_count11Matches

In the test account: One invitation is kept pending.

Total count invitations.total_count Invitations that have not been accepted.
Trust
1
Collected in
Trust, audit, and internal runs
Type
integer

Invitations that have not been accepted.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
invitations.total_count11Matches
Members 10 fields · 3 trust, 7 audit All 6 checked fields match
Admin count members.admin_count Members who hold the Admin role.
Trust
1
Collected in
Trust, audit, and internal runs
Type
integer

Members who hold the Admin role.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
members.admin_count11Matches

In the test account: One member holds the Admin role.

Inventory members.inventory Every member, sorted by email.
Audit
No more than 4 rows
Collected in
Audit and internal runs
Type
list

Every member, sorted by email.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
members.inventory[4]left outleft outMatches
Admin members.inventory[].admin Whether the member holds the Admin role.
Audit
2 values match
Collected in
Audit and internal runs
Type
boolean

Whether the member holds the Admin role.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
members.inventory[0].adminfalsefalseMatches
members.inventory[2].admintruetrueMatches
Email members.inventory[].email The member's email address.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The member's email address.

The test account doesn't have a known value for this field.

Joined at members.inventory[].joined_at When the member joined the organization. Null when the API does not say.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

When the member joined the organization. Null when the API does not say.

The test account doesn't have a known value for this field.

Roles members.inventory[].roles The console roles assigned to the member.
Audit
4 values match
Collected in
Audit and internal runs
Type
list

The console roles assigned to the member.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
members.inventory[0].roles[{"name":"Member","type":"system"},{"name":"sandbox-auditor","type":"custom"}][{"name":"Member","type":"system"},{"name":"sandbox-auditor","type":"custom"}]Matches
members.inventory[1].roles[{"name":"Billing","type":"system"}][{"name":"Billing","type":"system"}]Matches
members.inventory[2].roles[{"name":"Admin","type":"system"}][{"name":"Admin","type":"system"}]Matches
members.inventory[3].roles[{"name":"Member","type":"system"},{"name":"Service Reader","type":"system"}][{"name":"Member","type":"system"},{"name":"Service Reader","type":"system"}]Matches
Name members.inventory[].roles[].name The role's name, such as Admin or a custom role's name.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The role's name, such as Admin or a custom role's name.

The test account doesn't have a known value for this field.

Type members.inventory[].roles[].type system for a role ClickHouse Cloud defines, custom for one the organization made.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

system for a role ClickHouse Cloud defines, custom for one the organization made.

The test account doesn't have a known value for this field.

MFA enabled count members.mfa_enabled_count Members who sign in with MFA. Always null, with a gap: ClickHouse Cloud has no API that reports it.
Trust
Left out: not licensed, as expected
Collected in
Trust, audit, and internal runs
Type
integer, can be null

Members who sign in with MFA. Always null, with a gap: ClickHouse Cloud has no API that reports it.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
members.mfa_enabled_countleft out: not licensedleft out: not licensedMatches

In the test account: ClickHouse Cloud has no API that reports a member's MFA.

Total count members.total_count Members of the organization.
Trust
4
Collected in
Trust, audit, and internal runs
Type
integer

Members of the organization.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
members.total_count44Matches

In the test account: Four members with different console roles.

Organization 4 fields · from trust All 2 checked fields match
Created at organization.created_at When the organization was created. Null when the API does not say.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string, can be null

When the organization was created. Null when the API does not say.

The test account doesn't have a known value for this field.

ID organization.id The organization's ID.
Trust
Matches, value withheld
Collected in
Trust, audit, and internal runs
Type
string

The organization's ID.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
organization.idwithheldwithheldMatches
Name organization.name The organization's name.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The organization's name.

The test account doesn't have a known value for this field.

SSO enabled organization.sso_enabled Whether members sign in with SAML SSO. Always null, with a gap: ClickHouse Cloud has no API that reports it.
Trust
Left out: not licensed, as expected
Collected in
Trust, audit, and internal runs
Type
boolean, can be null

Whether members sign in with SAML SSO. Always null, with a gap: ClickHouse Cloud has no API that reports it.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
organization.sso_enabledleft out: not licensedleft out: not licensedMatches

In the test account: ClickHouse Cloud has no API that reports SAML SSO.

Quota limits 10 fields · 2 trust, 8 audit All 2 checked fields match
Duration services[].quota_limits.cloud_managed[].duration The interval's length, in seconds.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

The interval's length, in seconds.

The test account doesn't have a known value for this field.

Is randomized interval services[].quota_limits.cloud_managed[].is_randomized_interval Whether the interval starts at a random offset.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the interval starts at a random offset.

The test account doesn't have a known value for this field.

Limits services[].quota_limits.cloud_managed[].limits The limits that are set, keyed by their name in system.quota_limits without max_, such as queries or failed_sequential_authentications.
Audit
Not checked
Collected in
Audit and internal runs
Type
object

The limits that are set, keyed by their name in system.quota_limits without max_, such as queries or failed_sequential_authentications.

The test account doesn't have a known value for this field.

Quota name services[].quota_limits.cloud_managed[].quota_name The quota.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The quota.

The test account doesn't have a known value for this field.

Cloud managed count services[].quota_limits.cloud_managed_count ClickHouse Cloud's own quota limits.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
integer

ClickHouse Cloud's own quota limits.

The test account doesn't have a known value for this field.

Customer count services[].quota_limits.customer_count The customer's quota limits.
Trust
1
Collected in
Trust, audit, and internal runs
Type
integer

The customer's quota limits.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].quota_limits.customer_count11Matches
Duration services[].quota_limits.inventory[].duration The interval's length, in seconds.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

The interval's length, in seconds.

The test account doesn't have a known value for this field.

Is randomized interval services[].quota_limits.inventory[].is_randomized_interval Whether the interval starts at a random offset.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the interval starts at a random offset.

The test account doesn't have a known value for this field.

Limits services[].quota_limits.inventory[].limits The limits that are set, keyed by their name in system.quota_limits without max_, such as queries or failed_sequential_authentications.
Audit
{"failed_sequential_authentications":5,"queries":1000}
Collected in
Audit and internal runs
Type
object

The limits that are set, keyed by their name in system.quota_limits without max_, such as queries or failed_sequential_authentications.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].quota_limits.inventory[0].limits{"failed_sequential_authentications":5,"queries":1000}{"failed_sequential_authentications":5,"queries":1000}Matches
Quota name services[].quota_limits.inventory[].quota_name The quota.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The quota.

The test account doesn't have a known value for this field.

Quotas 16 fields · 2 trust, 14 audit All 3 checked fields match
Apply to all services[].quotas.cloud_managed[].apply_to_all Whether it applies to every user and role, apart from those in apply_to_except.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether it applies to every user and role, apart from those in apply_to_except.

The test account doesn't have a known value for this field.

Apply to except services[].quotas.cloud_managed[].apply_to_except The users and roles it does not apply to, when apply_to_all is true.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The users and roles it does not apply to, when apply_to_all is true.

The test account doesn't have a known value for this field.

Apply to list services[].quotas.cloud_managed[].apply_to_list The users and roles it applies to, when apply_to_all is false.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The users and roles it applies to, when apply_to_all is false.

The test account doesn't have a known value for this field.

Durations services[].quotas.cloud_managed[].durations The length of each interval, in seconds.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of integers

The length of each interval, in seconds.

The test account doesn't have a known value for this field.

Keys services[].quotas.cloud_managed[].keys What usage is counted by, such as user_name. Empty when it is counted for everyone together.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

What usage is counted by, such as user_name. Empty when it is counted for everyone together.

The test account doesn't have a known value for this field.

Name services[].quotas.cloud_managed[].name The quota's name.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The quota's name.

The test account doesn't have a known value for this field.

Storage services[].quotas.cloud_managed[].storage Where the server keeps the quota.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Where the server keeps the quota.

The test account doesn't have a known value for this field.

Cloud managed count services[].quotas.cloud_managed_count ClickHouse Cloud's own quotas.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
integer

ClickHouse Cloud's own quotas.

The test account doesn't have a known value for this field.

Customer count services[].quotas.customer_count The customer's quotas.
Trust
1
Collected in
Trust, audit, and internal runs
Type
integer

The customer's quotas.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].quotas.customer_count11Matches
Apply to all services[].quotas.inventory[].apply_to_all Whether it applies to every user and role, apart from those in apply_to_except.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether it applies to every user and role, apart from those in apply_to_except.

The test account doesn't have a known value for this field.

Apply to except services[].quotas.inventory[].apply_to_except The users and roles it does not apply to, when apply_to_all is true.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The users and roles it does not apply to, when apply_to_all is true.

The test account doesn't have a known value for this field.

Apply to list services[].quotas.inventory[].apply_to_list The users and roles it applies to, when apply_to_all is false.
Audit
["app_reader"]
Collected in
Audit and internal runs
Type
list of strings

The users and roles it applies to, when apply_to_all is false.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].quotas.inventory[0].apply_to_list["app_reader"]["app_reader"]Matches
Durations services[].quotas.inventory[].durations The length of each interval, in seconds.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of integers

The length of each interval, in seconds.

The test account doesn't have a known value for this field.

Keys services[].quotas.inventory[].keys What usage is counted by, such as user_name. Empty when it is counted for everyone together.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

What usage is counted by, such as user_name. Empty when it is counted for everyone together.

The test account doesn't have a known value for this field.

Name services[].quotas.inventory[].name The quota's name.
Audit
reader_quota
Collected in
Audit and internal runs
Type
string

The quota's name.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].quotas.inventory[0].name"reader_quota""reader_quota"Matches
Storage services[].quotas.inventory[].storage Where the server keeps the quota.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Where the server keeps the quota.

The test account doesn't have a known value for this field.

Role grants 14 fields · 3 trust, 11 audit All 4 checked fields match
Granted role is default services[].role_grants.cloud_managed[].granted_role_is_default Whether the role is active when the grantee signs in.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the role is active when the grantee signs in.

The test account doesn't have a known value for this field.

Granted role name services[].role_grants.cloud_managed[].granted_role_name The role granted.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The role granted.

The test account doesn't have a known value for this field.

Role name services[].role_grants.cloud_managed[].role_name The role the role is granted to. Null when it is granted to a user.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The role the role is granted to. Null when it is granted to a user.

The test account doesn't have a known value for this field.

User name services[].role_grants.cloud_managed[].user_name The user the role is granted to. Null when it is granted to a role.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The user the role is granted to. Null when it is granted to a role.

The test account doesn't have a known value for this field.

With admin option services[].role_grants.cloud_managed[].with_admin_option Whether the grantee may grant the role to others.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the grantee may grant the role to others.

The test account doesn't have a known value for this field.

Cloud managed count services[].role_grants.cloud_managed_count ClickHouse Cloud's own role grants.
Trust
1
Collected in
Trust, audit, and internal runs
Type
integer

ClickHouse Cloud's own role grants.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].role_grants.cloud_managed_countat least 11Matches
Customer count services[].role_grants.customer_count The customer's role grants.
Trust
7
Collected in
Trust, audit, and internal runs
Type
integer

The customer's role grants.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].role_grants.customer_count77Matches
Inventory services[].role_grants.inventory The roles granted to the customer's users and roles.
Audit
4 values match
Collected in
Audit and internal runs
Type
list

The roles granted to the customer's users and roles.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].role_grants.inventory[0]{"granted_role_is_default":true,"granted_role_name":"app_reader","role_name":null,"user_name":"analyst","with_admin_opti...{"granted_role_is_default":true,"granted_role_name":"app_reader","role_name":null,"user_name":"analyst","with_admin_opti...Matches
services[0].role_grants.inventory[2]{"granted_role_is_default":true,"granted_role_name":"access_reader","role_name":null,"user_name":"epack_collector","with...{"granted_role_is_default":true,"granted_role_name":"access_reader","role_name":null,"user_name":"epack_collector","with...Matches
services[0].role_grants.inventory[3]{"granted_role_is_default":true,"granted_role_name":"app_reader","role_name":null,"user_name":"office_only","with_admin_...{"granted_role_is_default":true,"granted_role_name":"app_reader","role_name":null,"user_name":"office_only","with_admin_...Matches
services[0].role_grants.inventory[4]{"granted_role_is_default":true,"granted_role_name":"user_admin","role_name":null,"user_name":"ops_admin","with_admin_op...{"granted_role_is_default":true,"granted_role_name":"user_admin","role_name":null,"user_name":"ops_admin","with_admin_op...Matches
Granted role is default services[].role_grants.inventory[].granted_role_is_default Whether the role is active when the grantee signs in.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the role is active when the grantee signs in.

The test account doesn't have a known value for this field.

Granted role name services[].role_grants.inventory[].granted_role_name The role granted.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The role granted.

The test account doesn't have a known value for this field.

Role name services[].role_grants.inventory[].role_name The role the role is granted to. Null when it is granted to a user.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The role the role is granted to. Null when it is granted to a user.

The test account doesn't have a known value for this field.

User name services[].role_grants.inventory[].user_name The user the role is granted to. Null when it is granted to a role.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The user the role is granted to. Null when it is granted to a role.

The test account doesn't have a known value for this field.

With admin option services[].role_grants.inventory[].with_admin_option Whether the grantee may grant the role to others.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the grantee may grant the role to others.

The test account doesn't have a known value for this field.

With admin option count services[].role_grants.with_admin_option_count Role grants to the customer's users and roles that let the grantee grant the role to others.
Trust
4
Collected in
Trust, audit, and internal runs
Type
integer

Role grants to the customer's users and roles that let the grantee grant the role to others.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].role_grants.with_admin_option_count44Matches

In the test account: Four role grants let their holders grant the role to others.

Roles 6 fields · 2 trust, 4 audit All 4 checked fields match
Name services[].roles.cloud_managed[].name The role's name.
Audit
4 values match
Collected in
Audit and internal runs
Type
string

The role's name.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].roles.cloud_managed[0].name"clickpipes_system""clickpipes_system"Matches
services[0].roles.cloud_managed[1].name"default_role""default_role"Matches
services[0].roles.cloud_managed[2].name"sql_console_admin""sql_console_admin"Matches
services[0].roles.cloud_managed[3].name"sql_console_read_only""sql_console_read_only"Matches
Storage services[].roles.cloud_managed[].storage Where the server keeps the role.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Where the server keeps the role.

The test account doesn't have a known value for this field.

Cloud managed count services[].roles.cloud_managed_count The roles ClickHouse Cloud creates in every service: clickpipes_system, default_role, sql_console_admin, and sql_console_read_only.
Trust
4
Collected in
Trust, audit, and internal runs
Type
integer

The roles ClickHouse Cloud creates in every service: clickpipes_system, default_role, sql_console_admin, and sql_console_read_only.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].roles.cloud_managed_count44Matches
Customer count services[].roles.customer_count The customer's database roles.
Trust
3
Collected in
Trust, audit, and internal runs
Type
integer

The customer's database roles.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].roles.customer_count33Matches
Name services[].roles.inventory[].name The role's name.
Audit
3 values match
Collected in
Audit and internal runs
Type
string

The role's name.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].roles.inventory[0].name"access_reader""access_reader"Matches
services[0].roles.inventory[1].name"app_reader""app_reader"Matches
services[0].roles.inventory[2].name"user_admin""user_admin"Matches
Storage services[].roles.inventory[].storage Where the server keeps the role.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Where the server keeps the role.

The test account doesn't have a known value for this field.

Row policies 20 fields · 2 trust, 18 audit All 6 checked fields match
Apply to all services[].row_policies.cloud_managed[].apply_to_all Whether it applies to every user and role, apart from those in apply_to_except.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether it applies to every user and role, apart from those in apply_to_except.

The test account doesn't have a known value for this field.

Apply to except services[].row_policies.cloud_managed[].apply_to_except The users and roles it does not apply to, when apply_to_all is true.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The users and roles it does not apply to, when apply_to_all is true.

The test account doesn't have a known value for this field.

Apply to list services[].row_policies.cloud_managed[].apply_to_list The users and roles it applies to, when apply_to_all is false.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The users and roles it applies to, when apply_to_all is false.

The test account doesn't have a known value for this field.

Database services[].row_policies.cloud_managed[].database The database the policy applies to.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The database the policy applies to.

The test account doesn't have a known value for this field.

Is restrictive services[].row_policies.cloud_managed[].is_restrictive Whether the policy is restrictive rather than permissive.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the policy is restrictive rather than permissive.

The test account doesn't have a known value for this field.

Name services[].row_policies.cloud_managed[].name The policy's full name, such as tenant_a ON app.events.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The policy's full name, such as tenant_a ON app.events.

The test account doesn't have a known value for this field.

Short name services[].row_policies.cloud_managed[].short_name The policy's name.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The policy's name.

The test account doesn't have a known value for this field.

Storage services[].row_policies.cloud_managed[].storage Where the server keeps the policy.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Where the server keeps the policy.

The test account doesn't have a known value for this field.

Table services[].row_policies.cloud_managed[].table The table the policy applies to, or empty for the whole database.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The table the policy applies to, or empty for the whole database.

The test account doesn't have a known value for this field.

Cloud managed count services[].row_policies.cloud_managed_count ClickHouse Cloud's own row policies.
Trust
0
Collected in
Trust, audit, and internal runs
Type
integer

ClickHouse Cloud's own row policies.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].row_policies.cloud_managed_count00Matches
Customer count services[].row_policies.customer_count The customer's row policies.
Trust
1
Collected in
Trust, audit, and internal runs
Type
integer

The customer's row policies.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].row_policies.customer_count11Matches
Apply to all services[].row_policies.inventory[].apply_to_all Whether it applies to every user and role, apart from those in apply_to_except.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether it applies to every user and role, apart from those in apply_to_except.

The test account doesn't have a known value for this field.

Apply to except services[].row_policies.inventory[].apply_to_except The users and roles it does not apply to, when apply_to_all is true.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The users and roles it does not apply to, when apply_to_all is true.

The test account doesn't have a known value for this field.

Apply to list services[].row_policies.inventory[].apply_to_list The users and roles it applies to, when apply_to_all is false.
Audit
["app_reader"]
Collected in
Audit and internal runs
Type
list of strings

The users and roles it applies to, when apply_to_all is false.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].row_policies.inventory[0].apply_to_list["app_reader"]["app_reader"]Matches
Database services[].row_policies.inventory[].database The database the policy applies to.
Audit
app
Collected in
Audit and internal runs
Type
string

The database the policy applies to.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].row_policies.inventory[0].database"app""app"Matches
Is restrictive services[].row_policies.inventory[].is_restrictive Whether the policy is restrictive rather than permissive.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the policy is restrictive rather than permissive.

The test account doesn't have a known value for this field.

Name services[].row_policies.inventory[].name The policy's full name, such as tenant_a ON app.events.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The policy's full name, such as tenant_a ON app.events.

The test account doesn't have a known value for this field.

Short name services[].row_policies.inventory[].short_name The policy's name.
Audit
tenant_a
Collected in
Audit and internal runs
Type
string

The policy's name.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].row_policies.inventory[0].short_name"tenant_a""tenant_a"Matches
Storage services[].row_policies.inventory[].storage Where the server keeps the policy.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Where the server keeps the policy.

The test account doesn't have a known value for this field.

Table services[].row_policies.inventory[].table The table the policy applies to, or empty for the whole database.
Audit
events
Collected in
Audit and internal runs
Type
string

The table the policy applies to, or empty for the whole database.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].row_policies.inventory[0].table"events""events"Matches
Services 4 fields · from trust All 4 checked fields match
Services services One entry for each service the configuration lists, in its order. An empty list means the configuration lists no services, not that the o...
Trust
No more than 1 rows
Collected in
Trust, audit, and internal runs
Type
list

One entry for each service the configuration lists, in its order. An empty list means the configuration lists no services, not that the organization has none.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[1]left outleft outMatches
Host services[].host The service's host, as the configuration names it.
Trust
Matches, value withheld
Collected in
Trust, audit, and internal runs
Type
string

The service's host, as the configuration names it.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].hostwithheldwithheldMatches
User services[].user The database user the collector read the service as.
Trust
epack_collector
Collected in
Trust, audit, and internal runs
Type
string

The database user the collector read the service as.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].user"epack_collector""epack_collector"Matches
Version services[].version The server's ClickHouse version.
Trust
Present, value withheld
Collected in
Trust, audit, and internal runs
Type
string

The server's ClickHouse version.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].versionany valueany valueMatches
Settings profile elements 20 fields · 2 trust, 18 audit All 4 checked fields match
Inherit profile services[].settings_profile_elements.cloud_managed[].inherit_profile The profile the element inherits, or null.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The profile the element inherits, or null.

The test account doesn't have a known value for this field.

Max services[].settings_profile_elements.cloud_managed[].max The highest value the setting may be changed to, or null.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The highest value the setting may be changed to, or null.

The test account doesn't have a known value for this field.

Min services[].settings_profile_elements.cloud_managed[].min The lowest value the setting may be changed to, or null.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The lowest value the setting may be changed to, or null.

The test account doesn't have a known value for this field.

Profile name services[].settings_profile_elements.cloud_managed[].profile_name The profile the element belongs to, or null.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The profile the element belongs to, or null.

The test account doesn't have a known value for this field.

Role name services[].settings_profile_elements.cloud_managed[].role_name The role the element is set on, or null.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The role the element is set on, or null.

The test account doesn't have a known value for this field.

Setting name services[].settings_profile_elements.cloud_managed[].setting_name The setting, such as readonly. Null when the element only inherits a profile.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The setting, such as readonly. Null when the element only inherits a profile.

The test account doesn't have a known value for this field.

User name services[].settings_profile_elements.cloud_managed[].user_name The user the element is set on, or null.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The user the element is set on, or null.

The test account doesn't have a known value for this field.

Value services[].settings_profile_elements.cloud_managed[].value The setting's value, or null when the element sets none.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The setting's value, or null when the element sets none.

The test account doesn't have a known value for this field.

Writability services[].settings_profile_elements.cloud_managed[].writability WRITABLE, CONST, or CHANGEABLE_IN_READONLY, or null when the element sets no constraint.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

WRITABLE, CONST, or CHANGEABLE_IN_READONLY, or null when the element sets no constraint.

The test account doesn't have a known value for this field.

Cloud managed count services[].settings_profile_elements.cloud_managed_count ClickHouse Cloud's own settings profile elements.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
integer

ClickHouse Cloud's own settings profile elements.

The test account doesn't have a known value for this field.

Customer count services[].settings_profile_elements.customer_count The customer's settings profile elements.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
integer

The customer's settings profile elements.

The test account doesn't have a known value for this field.

Inherit profile services[].settings_profile_elements.inventory[].inherit_profile The profile the element inherits, or null.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The profile the element inherits, or null.

The test account doesn't have a known value for this field.

Max services[].settings_profile_elements.inventory[].max The highest value the setting may be changed to, or null.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The highest value the setting may be changed to, or null.

The test account doesn't have a known value for this field.

Min services[].settings_profile_elements.inventory[].min The lowest value the setting may be changed to, or null.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The lowest value the setting may be changed to, or null.

The test account doesn't have a known value for this field.

Profile name services[].settings_profile_elements.inventory[].profile_name The profile the element belongs to, or null.
Audit
ro_profile
Collected in
Audit and internal runs
Type
string, can be null

The profile the element belongs to, or null.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].settings_profile_elements.inventory[0].profile_name"ro_profile""ro_profile"Matches
Role name services[].settings_profile_elements.inventory[].role_name The role the element is set on, or null.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The role the element is set on, or null.

The test account doesn't have a known value for this field.

Setting name services[].settings_profile_elements.inventory[].setting_name The setting, such as readonly. Null when the element only inherits a profile.
Audit
2 values match
Collected in
Audit and internal runs
Type
string, can be null

The setting, such as readonly. Null when the element only inherits a profile.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].settings_profile_elements.inventory[0].setting_name"readonly""readonly"Matches
services[0].settings_profile_elements.inventory[1].setting_name"readonly""readonly"Matches
User name services[].settings_profile_elements.inventory[].user_name The user the element is set on, or null.
Audit
epack_collector
Collected in
Audit and internal runs
Type
string, can be null

The user the element is set on, or null.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].settings_profile_elements.inventory[1].user_name"epack_collector""epack_collector"Matches
Value services[].settings_profile_elements.inventory[].value The setting's value, or null when the element sets none.
Audit
2 values match
Collected in
Audit and internal runs
Type
string, can be null

The setting's value, or null when the element sets none.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].settings_profile_elements.inventory[0].value"1""1"Matches
services[0].settings_profile_elements.inventory[1].value"1""1"Matches
Writability services[].settings_profile_elements.inventory[].writability WRITABLE, CONST, or CHANGEABLE_IN_READONLY, or null when the element sets no constraint.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

WRITABLE, CONST, or CHANGEABLE_IN_READONLY, or null when the element sets no constraint.

The test account doesn't have a known value for this field.

Settings profiles 12 fields · 2 trust, 10 audit All 4 checked fields match
Apply to all services[].settings_profiles.cloud_managed[].apply_to_all Whether it applies to every user and role, apart from those in apply_to_except.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether it applies to every user and role, apart from those in apply_to_except.

The test account doesn't have a known value for this field.

Apply to except services[].settings_profiles.cloud_managed[].apply_to_except The users and roles it does not apply to, when apply_to_all is true.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The users and roles it does not apply to, when apply_to_all is true.

The test account doesn't have a known value for this field.

Apply to list services[].settings_profiles.cloud_managed[].apply_to_list The users and roles it applies to, when apply_to_all is false.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The users and roles it applies to, when apply_to_all is false.

The test account doesn't have a known value for this field.

Name services[].settings_profiles.cloud_managed[].name The profile's name.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The profile's name.

The test account doesn't have a known value for this field.

Storage services[].settings_profiles.cloud_managed[].storage Where the server keeps the profile.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Where the server keeps the profile.

The test account doesn't have a known value for this field.

Cloud managed count services[].settings_profiles.cloud_managed_count ClickHouse Cloud's own settings profiles.
Trust
15
Collected in
Trust, audit, and internal runs
Type
integer

ClickHouse Cloud's own settings profiles.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].settings_profiles.cloud_managed_countat least 115Matches
Customer count services[].settings_profiles.customer_count The customer's settings profiles.
Trust
1
Collected in
Trust, audit, and internal runs
Type
integer

The customer's settings profiles.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].settings_profiles.customer_count11Matches
Apply to all services[].settings_profiles.inventory[].apply_to_all Whether it applies to every user and role, apart from those in apply_to_except.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether it applies to every user and role, apart from those in apply_to_except.

The test account doesn't have a known value for this field.

Apply to except services[].settings_profiles.inventory[].apply_to_except The users and roles it does not apply to, when apply_to_all is true.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The users and roles it does not apply to, when apply_to_all is true.

The test account doesn't have a known value for this field.

Apply to list services[].settings_profiles.inventory[].apply_to_list The users and roles it applies to, when apply_to_all is false.
Audit
["app_reader"]
Collected in
Audit and internal runs
Type
list of strings

The users and roles it applies to, when apply_to_all is false.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].settings_profiles.inventory[0].apply_to_list["app_reader"]["app_reader"]Matches
Name services[].settings_profiles.inventory[].name The profile's name.
Audit
ro_profile
Collected in
Audit and internal runs
Type
string

The profile's name.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].settings_profiles.inventory[0].name"ro_profile""ro_profile"Matches
Storage services[].settings_profiles.inventory[].storage Where the server keeps the profile.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Where the server keeps the profile.

The test account doesn't have a known value for this field.

Users 31 fields · 5 trust, 26 audit All 13 checked fields match
Any host count services[].users.any_host_count The customer's users who may connect from any address.
Trust
7
Collected in
Trust, audit, and internal runs
Type
integer

The customer's users who may connect from any address.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.any_host_count77Matches

In the test account: Seven of the eight can connect from any address. One connects only from 10.0.0.0/8.

Any host services[].users.cloud_managed[].any_host Whether the user may connect from any address.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether the user may connect from any address.

The test account doesn't have a known value for this field.

Second factor services[].users.cloud_managed[].auth_methods[].second_factor The second factor the method also asks for, such as one_time_password. Null when it asks for none.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The second factor the method also asks for, such as one_time_password. Null when it asks for none.

The test account doesn't have a known value for this field.

Type services[].users.cloud_managed[].auth_methods[].type The sign-in method, as system.users names it, such as sha256_password, ssh_key, or no_password.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The sign-in method, as system.users names it, such as sha256_password, ssh_key, or no_password.

The test account doesn't have a known value for this field.

Valid until services[].users.cloud_managed[].auth_methods[].valid_until When the method stops working, in UTC. Null when it never expires.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

When the method stops working, in UTC. Null when it never expires.

The test account doesn't have a known value for this field.

Host IP services[].users.cloud_managed[].host_ip The addresses and ranges the user may connect from. ::/0 means any address.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The addresses and ranges the user may connect from. ::/0 means any address.

The test account doesn't have a known value for this field.

Host names services[].users.cloud_managed[].host_names The host names the user may connect from.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The host names the user may connect from.

The test account doesn't have a known value for this field.

Host names like services[].users.cloud_managed[].host_names_like LIKE patterns for the host names the user may connect from.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

LIKE patterns for the host names the user may connect from.

The test account doesn't have a known value for this field.

Host names regexp services[].users.cloud_managed[].host_names_regexp Regular expressions for the host names the user may connect from.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

Regular expressions for the host names the user may connect from.

The test account doesn't have a known value for this field.

Name services[].users.cloud_managed[].name The user's name.
Audit
11 values match
Collected in
Audit and internal runs
Type
string

The user's name.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.cloud_managed[0].name"availability-monitoring-internal""availability-monitoring-internal"Matches
services[0].users.cloud_managed[1].name"backups-internal""backups-internal"Matches
services[0].users.cloud_managed[2].name"hyperdx-alert-internal""hyperdx-alert-internal"Matches
services[0].users.cloud_managed[3].name"management-internal""management-internal"Matches
services[0].users.cloud_managed[4].name"monitoring-internal""monitoring-internal"Matches
services[0].users.cloud_managed[5].name"observability-internal""observability-internal"Matches
services[0].users.cloud_managed[6].name"operator-cert-internal""operator-cert-internal"Matches
services[0].users.cloud_managed[7].name"operator-internal""operator-internal"Matches
services[0].users.cloud_managed[8].name"prometheus-certauth-internal""prometheus-certauth-internal"Matches
services[0].users.cloud_managed[9].name"prometheus-exporter""prometheus-exporter"Matches
services[0].users.cloud_managed[10].name"prometheus-internal""prometheus-internal"Matches
No password services[].users.cloud_managed[].no_password Whether one of the user's sign-in methods is no_password and has no valid_until or one later than collected_at, so anyone who reaches the...
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether one of the user's sign-in methods is no_password and has no valid_until or one later than collected_at, so anyone who reaches the service can sign in as the user.

The test account doesn't have a known value for this field.

Plaintext password services[].users.cloud_managed[].plaintext_password Whether one of the user's sign-in methods keeps its password in plain text.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether one of the user's sign-in methods keeps its password in plain text.

The test account doesn't have a known value for this field.

Storage services[].users.cloud_managed[].storage Where the server keeps the user, such as replicated or users_xml.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Where the server keeps the user, such as replicated or users_xml.

The test account doesn't have a known value for this field.

Cloud managed count services[].users.cloud_managed_count ClickHouse Cloud's own database users, the ones stored in users_xml.
Trust
11
Collected in
Trust, audit, and internal runs
Type
integer

ClickHouse Cloud's own database users, the ones stored in users_xml.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.cloud_managed_count1111Matches
Customer count services[].users.customer_count The customer's database users: every user apart from ClickHouse Cloud's own.
Trust
8
Collected in
Trust, audit, and internal runs
Type
integer

The customer's database users: every user apart from ClickHouse Cloud's own.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.customer_count88Matches

In the test account: Six users made for these checks, and the default and sql-console users ClickHouse Cloud creates.

Inventory services[].users.inventory The customer's database users, sorted by name, with the default and sql-console users ClickHouse Cloud creates.
Audit
No more than 8 rows
Collected in
Audit and internal runs
Type
list

The customer's database users, sorted by name, with the default and sql-console users ClickHouse Cloud creates.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.inventory[8]left outleft outMatches
Any host services[].users.inventory[].any_host Whether the user may connect from any address.
Audit
No
Collected in
Audit and internal runs
Type
boolean

Whether the user may connect from any address.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.inventory[5].any_hostfalsefalseMatches
Auth methods services[].users.inventory[].auth_methods Each way the user can sign in. Any one of them is enough.
Audit
2 values match
Collected in
Audit and internal runs
Type
list

Each way the user can sign in. Any one of them is enough.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.inventory[0].auth_methods[{"second_factor":null,"type":"sha256_password","valid_until":null}][{"second_factor":null,"type":"sha256_password","valid_until":null}]Matches
services[0].users.inventory[2].auth_methods[{"second_factor":null,"type":"ssh_key","valid_until":null}][{"second_factor":null,"type":"ssh_key","valid_until":null}]Matches
Second factor services[].users.inventory[].auth_methods[].second_factor The second factor the method also asks for, such as one_time_password. Null when it asks for none.
Audit
Not checked
Collected in
Audit and internal runs
Type
string, can be null

The second factor the method also asks for, such as one_time_password. Null when it asks for none.

The test account doesn't have a known value for this field.

Type services[].users.inventory[].auth_methods[].type The sign-in method, as system.users names it, such as sha256_password, ssh_key, or no_password.
Audit
4 values match
Collected in
Audit and internal runs
Type
string

The sign-in method, as system.users names it, such as sha256_password, ssh_key, or no_password.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.inventory[1].auth_methods[0].type"sha256_password""sha256_password"Matches
services[0].users.inventory[3].auth_methods[0].type"sha256_password""sha256_password"Matches
services[0].users.inventory[4].auth_methods[0].type"sha256_password""sha256_password"Matches
services[0].users.inventory[4].auth_methods[1].type"ssh_key""ssh_key"Matches
Valid until services[].users.inventory[].auth_methods[].valid_until When the method stops working, in UTC. Null when it never expires.
Audit
2030-01-01T00:00:00Z
Collected in
Audit and internal runs
Type
string, can be null

When the method stops working, in UTC. Null when it never expires.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.inventory[6].auth_methods[0].valid_until"2030-01-01T00:00:00Z""2030-01-01T00:00:00Z"Matches
Host IP services[].users.inventory[].host_ip The addresses and ranges the user may connect from. ::/0 means any address.
Audit
["10.0.0.0/8"]
Collected in
Audit and internal runs
Type
list of strings

The addresses and ranges the user may connect from. ::/0 means any address.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.inventory[5].host_ip["10.0.0.0/8"]["10.0.0.0/8"]Matches
Host names services[].users.inventory[].host_names The host names the user may connect from.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The host names the user may connect from.

The test account doesn't have a known value for this field.

Host names like services[].users.inventory[].host_names_like LIKE patterns for the host names the user may connect from.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

LIKE patterns for the host names the user may connect from.

The test account doesn't have a known value for this field.

Host names regexp services[].users.inventory[].host_names_regexp Regular expressions for the host names the user may connect from.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

Regular expressions for the host names the user may connect from.

The test account doesn't have a known value for this field.

Name services[].users.inventory[].name The user's name.
Audit
8 values match
Collected in
Audit and internal runs
Type
string

The user's name.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.inventory[0].name"analyst""analyst"Matches
services[0].users.inventory[1].name"default""default"Matches
services[0].users.inventory[2].name"deploy_bot""deploy_bot"Matches
services[0].users.inventory[3].name"epack_collector""epack_collector"Matches
services[0].users.inventory[4].name"legacy_app""legacy_app"Matches
services[0].users.inventory[5].name"office_only""office_only"Matches
services[0].users.inventory[6].name"ops_admin""ops_admin"Matches
services[0].users.inventory[7].name"sql-console""sql-console"Matches
No password services[].users.inventory[].no_password Whether one of the user's sign-in methods is no_password and has no valid_until or one later than collected_at, so anyone who reaches the...
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether one of the user's sign-in methods is no_password and has no valid_until or one later than collected_at, so anyone who reaches the service can sign in as the user.

The test account doesn't have a known value for this field.

Plaintext password services[].users.inventory[].plaintext_password Whether one of the user's sign-in methods keeps its password in plain text.
Audit
Not checked
Collected in
Audit and internal runs
Type
boolean

Whether one of the user's sign-in methods keeps its password in plain text.

The test account doesn't have a known value for this field.

Storage services[].users.inventory[].storage Where the server keeps the user, such as replicated or users_xml.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Where the server keeps the user, such as replicated or users_xml.

The test account doesn't have a known value for this field.

No password count services[].users.no_password_count The customer's users who can sign in with no password.
Trust
0
Collected in
Trust, audit, and internal runs
Type
integer

The customer's users who can sign in with no password.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.no_password_count00Matches
Plaintext password count services[].users.plaintext_password_count The customer's users with a password kept in plain text.
Trust
0
Collected in
Trust, audit, and internal runs
Type
integer

The customer's users with a password kept in plain text.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
services[0].users.plaintext_password_count00Matches

Run details clickhouse.collector-result.json

The status of each run, and any value it couldn't read and why.

General 1 field · from trust Not checked
Checks dropped checks_dropped Number of findings left out after the first 100.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
integer

Number of findings left out after the first 100.

The test account doesn't have a known value for this field.

Calls 31 fields · 7 trust, 24 audit Checked field matches
Attempts calls.operations[].attempts Number of requests sent, including retries. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

Number of requests sent, including retries. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Calls calls.operations[].calls Number of times the collector made the call, not counting retries. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

Number of times the collector made the call, not counting retries. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Deprecation calls.operations[].deprecation The Deprecation header from the vendor's most recent response that carried one.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The Deprecation header from the vendor's most recent response that carried one.

The test account doesn't have a known value for this field.

Error codes calls.operations[].error_codes The codes of the operation's failed attempts, without their counts.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
list

The codes of the operation's failed attempts, without their counts.

The test account doesn't have a known value for this field.

Errors calls.operations[].errors Number of failed attempts per code. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
object

Number of failed attempts per code. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Name calls.operations[].name The operation's name, such as okta.users.list.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The operation's name, such as okta.users.list.

The test account doesn't have a known value for this field.

Permission calls.operations[].permission The permission the call needs, in the vendor's terms. The collector declares it with Operation.Permission. A permission_denied gap from t...
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The permission the call needs, in the vendor's terms. The collector declares it with Operation.Permission. A permission_denied gap from the call records it as its missing_permission.

The test account doesn't have a known value for this field.

Retried calls.operations[].retried True when a request for the operation was a retry.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean

True when a request for the operation was a retry.

The test account doesn't have a known value for this field.

Retries calls.operations[].retries Number of requests that were retries. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

Number of requests that were retries. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Status codes calls.operations[].status_codes The HTTP status codes, or DNS response codes for a lookup, that the operation's responses had, without their counts.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
list of strings

The HTTP status codes, or DNS response codes for a lookup, that the operation's responses had, without their counts.

The test account doesn't have a known value for this field.

Statuses calls.operations[].statuses Number of responses per HTTP status code, or per DNS response code for a lookup. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
object

Number of responses per HTTP status code, or per DNS response code for a lookup. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Sunset calls.operations[].sunset The Sunset header from the vendor's most recent response that carried one.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The Sunset header from the vendor's most recent response that carried one.

The test account doesn't have a known value for this field.

Problem requests dropped calls.problem_requests_dropped Number of the rows left out whose attempt failed or was a retry. Present wherever the rows are; 0 means every failed or retried request h...
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

Number of the rows left out whose attempt failed or was a retry. Present wherever the rows are; 0 means every failed or retried request has a row.

The test account doesn't have a known value for this field.

Requests calls.requests One row per request, at the audit and internal levels: the first 1000, then up to 1000 more whose attempt failed or was a retry. Its rows aren't described in the schema yet
Audit
Present, value withheld
Collected in
Audit and internal runs
Type
list

One row per request, at the audit and internal levels: the first 1000, then up to 1000 more whose attempt failed or was a retry.

Its rows aren't described in the schema yet. The checks below name the paths as the collector writes them.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
calls.requests.*.start_msany valueany valueMatches
Attempt calls.requests[].attempt Which attempt the request was: 1 for the first, higher for a retry.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

Which attempt the request was: 1 for the first, higher for a retry.

The test account doesn't have a known value for this field.

Call calls.requests[].call The call's number in the run, counting from 1 in the order calls start. Every attempt of one call has the same number.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

The call's number in the run, counting from 1 in the order calls start. Every attempt of one call has the same number.

The test account doesn't have a known value for this field.

Duration ms calls.requests[].duration_ms How long the request took, in milliseconds.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

How long the request took, in milliseconds.

The test account doesn't have a known value for this field.

Error calls.requests[].error The code for a request that failed. Absent when it succeeded.
Audit
Not checked
Collected in
Audit and internal runs
Type
value

The code for a request that failed. Absent when it succeeded.

The test account doesn't have a known value for this field.

Host calls.requests[].host The request's host, the name a DNS lookup queried, or the host dialed.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The request's host, the name a DNS lookup queried, or the host dialed.

The test account doesn't have a known value for this field.

Method calls.requests[].method The HTTP method, DNS and the record type looked up, such as DNS TXT, or DIAL.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The HTTP method, DNS and the record type looked up, such as DNS TXT, or DIAL.

The test account doesn't have a known value for this field.

Operation calls.requests[].operation The operation the request belongs to.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The operation the request belongs to.

The test account doesn't have a known value for this field.

Query keys calls.requests[].query_keys Names of the request's query parameters. Their values are not recorded.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

Names of the request's query parameters. Their values are not recorded.

The test account doesn't have a known value for this field.

Rcode calls.requests[].rcode DNS lookups only: the response code. A lookup that got no response has none.
Audit
Not checked
Collected in
Audit and internal runs
Type
value

DNS lookups only: the response code. A lookup that got no response has none.

The test account doesn't have a known value for this field.

Request ID calls.requests[].request_id The vendor's request ID from the response headers, when it sent one.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The vendor's request ID from the response headers, when it sent one.

The test account doesn't have a known value for this field.

Route calls.requests[].route HTTP requests only.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

HTTP requests only.

The test account doesn't have a known value for this field.

Start ms calls.requests[].start_ms When the attempt was sent, in milliseconds after the run's started_at.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

When the attempt was sent, in milliseconds after the run's started_at.

The test account doesn't have a known value for this field.

Status calls.requests[].status The response's HTTP status code. Absent when no response arrived.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

The response's HTTP status code. Absent when no response arrived.

The test account doesn't have a known value for this field.

Step calls.requests[].step The step the call was made in. Absent for a call made outside every step.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The step the call was made in. Absent for a call made outside every step.

The test account doesn't have a known value for this field.

Vendor code calls.requests[].vendor_code The vendor's own error code from a failed response, such as E0000047. Never the vendor's message. Absent for collectors that do not read...
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The vendor's own error code from a failed response, such as E0000047. Never the vendor's message. Absent for collectors that do not read one.

The test account doesn't have a known value for this field.

Waited ms calls.requests[].waited_ms On a retry, how long the SDK waited before sending it: the Retry-After value, the rate limit reset, or its own backoff. Absent on a first...
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

On a retry, how long the SDK waited before sending it: the Retry-After value, the rate limit reset, or its own backoff. Absent on a first attempt and on a retry sent at once.

The test account doesn't have a known value for this field.

Requests dropped calls.requests_dropped Number of request rows left out.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

Number of request rows left out.

The test account doesn't have a known value for this field.

Checks 5 fields · from trust Checked field matches
Checks checks The first 100 findings of the output checks the SDK runs on each artifact it writes. Absent when there are none.
Trust
Left out, as expected
Collected in
Trust, audit, and internal runs
Type
list

The first 100 findings of the output checks the SDK runs on each artifact it writes. Absent when there are none.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
checksleft outleft outMatches
Check checks[].check schema, schema_unusable, population, nulls, rollups, ratios, guidance, or levels.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

schema, schema_unusable, population, nulls, rollups, ratios, guidance, or levels.

The test account doesn't have a known value for this field.

Message checks[].message What the check found.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

What the check found.

The test account doesn't have a known value for this field.

Path checks[].path The artifact the finding is about. A schema_unusable finding has none.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The artifact the finding is about. A schema_unusable finding has none.

The test account doesn't have a known value for this field.

Pointer checks[].pointer JSON pointer to the value the finding is about.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

JSON pointer to the value the finding is about.

The test account doesn't have a known value for this field.

Choice 6 fields · from trust Not checked
Consequence gaps[].choice.options[].consequence What happens if the customer picks the option, including its cost and what stays Not collected.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

What happens if the customer picks the option, including its cost and what stays Not collected.

The test account doesn't have a known value for this field.

Label gaps[].choice.options[].label
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The test account doesn't have a known value for this field.

Question gaps[].choice.question
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The test account doesn't have a known value for this field.

Consequence warnings[].choice.options[].consequence What happens if the customer picks the option, including its cost and what stays Not collected.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

What happens if the customer picks the option, including its cost and what stays Not collected.

The test account doesn't have a known value for this field.

Label warnings[].choice.options[].label
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The test account doesn't have a known value for this field.

Question warnings[].choice.question
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The test account doesn't have a known value for this field.

Collect 3 fields · from trust Not checked
Left out collect.left_out Each kind the collector could write that the key left out. Each has a not_shared gap.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
list of strings

Each kind the collector could write that the key left out. Each has a not_shared gap.

The test account doesn't have a known value for this field.

Listed collect.listed The kinds of evidence the collect config key listed, such as cloud-posture.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
list of strings

The kinds of evidence the collect config key listed, such as cloud-posture.

The test account doesn't have a known value for this field.

Unmatched collect.unmatched Each kind the key listed that the run never wrote, such as a misspelled one.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
list of strings

Each kind the key listed that the run never wrote, such as a misspelled one.

The test account doesn't have a known value for this field.

Collector 3 fields · from trust Checked field matches
Commit collector.commit The source commit the collector was built from. Absent when the build set none.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The source commit the collector was built from. Absent when the build set none.

The test account doesn't have a known value for this field.

Name collector.name The collector's name, as its spec declares it.
Trust
clickhouse
Collected in
Trust, audit, and internal runs
Type
string

The collector's name, as its spec declares it.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
collector.name"clickhouse""clickhouse"Matches
Version collector.version The collector's version, such as v0.3.0. Absent when the build set none.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The collector's version, such as v0.3.0. Absent when the build set none.

The test account doesn't have a known value for this field.

Gaps 18 fields · 13 trust, 5 audit All 2 checked fields match
Gaps gaps One entry per value the collector left out of an artifact, and why.
Trust
No more than 2 rows
Collected in
Trust, audit, and internal runs
Type
list

One entry per value the collector left out of an artifact, and why.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
gaps[2]left outleft outMatches
Call gaps[].call The number of that call, matching the call on its request rows. A partial gap names the first failed call among those it counts. Present...
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

The number of that call, matching the call on its request rows. A partial gap names the first failed call among those it counts. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Code gaps[].code Why the value was left out: auth_failed, permission_denied, config_invalid, not_licensed, unsupported, not_read, rate_limited, vendor_err...
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
value

Why the value was left out: auth_failed, permission_denied, config_invalid, not_licensed, unsupported, not_read, rate_limited, vendor_error, timeout, invalid_response, too_large, internal, or not_shared. unsupported means the vendor does not report the value. too_large means the vendor holds more than the collector reads. not_shared means the customer left it out of this pack with the collect config key.

The test account doesn't have a known value for this field.

Detail gaps[].detail Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Fix gaps[].fix The one instruction that fixes collection. It uses fixed wording plus permission, plan, and region names. A gap has at most one of fix, n...
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The one instruction that fixes collection. It uses fixed wording plus permission, plan, and region names. A gap has at most one of fix, no_action, and choice.

The test account doesn't have a known value for this field.

Missing permission gaps[].missing_permission For a permission_denied gap, the permission to grant, in the vendor's own terms, such as okta.logs.read.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

For a permission_denied gap, the permission to grant, in the vendor's own terms, such as okta.logs.read.

The test account doesn't have a known value for this field.

No action gaps[].no_action True when nothing needs changing now. It does not clear the gap.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean

True when nothing needs changing now. It does not clear the gap.

The test account doesn't have a known value for this field.

Operation gaps[].operation The operation whose failed call left the value out. Absent when no call's error caused the gap, such as for a feature the plan lacks.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The operation whose failed call left the value out. Absent when no call's error caused the gap, such as for a feature the plan lacks.

The test account doesn't have a known value for this field.

Owner gaps[].owner Who can act on the code: customer, nobody for an expected gap such as a feature the plan lacks, vendor, vendor_or_runner, or publisher.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
value

Who can act on the code: customer, nobody for an expected gap such as a feature the plan lacks, vendor, vendor_or_runner, or publisher.

The test account doesn't have a known value for this field.

Path gaps[].path The artifact the value belongs in. Absent when the run wrote no such artifact, in which case schema names it.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The artifact the value belongs in. Absent when the run wrote no such artifact, in which case schema names it.

The test account doesn't have a known value for this field.

Pointer gaps[].pointer JSON pointer to the value within the artifact. Items are addressed by array index.
Trust
2 values match
Collected in
Trust, audit, and internal runs
Type
string

JSON pointer to the value within the artifact. Items are addressed by array index.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
gaps[0].pointer"/members/mfa_enabled_count""/members/mfa_enabled_count"Matches
gaps[1].pointer"/organization/sso_enabled""/organization/sso_enabled"Matches
Schema gaps[].schema The schema of the artifact the value belongs in, when the run wrote no such artifact.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The schema of the artifact the value belongs in, when the run wrote no such artifact.

The test account doesn't have a known value for this field.

Scope gaps[].scope The account, tenant, or region affected. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The account, tenant, or region affected. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Source gaps[].source The file and line in the collector's own source that recorded the gap, relative to its module root, such as internal/collector/system_log...
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The file and line in the collector's own source that recorded the gap, relative to its module root, such as internal/collector/system_log.go:155.

The test account doesn't have a known value for this field.

Status gaps[].status not_collected when the collector could not read the value. partial when a rollup was left out because some of the items it covers could n...
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
value

not_collected when the collector could not read the value. partial when a rollup was left out because some of the items it covers could not be read, or when a list or object holds only the items that could be.

The test account doesn't have a known value for this field.

Unmeasured gaps[].unmeasured For a partial gap, the number of items that could not be read. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

For a partial gap, the number of items that could not be read. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Vendor code gaps[].vendor_code The vendor's own error code, when its response included one.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The vendor's own error code, when its response included one.

The test account doesn't have a known value for this field.

Warning gaps[].warning The collector's message to the operator about the gap, redacted. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The collector's message to the operator about the gap, redacted. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Operations 2 fields · 1 trust, 1 audit Not checked
Calls steps[].operations[].calls Its calls in the step. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

Its calls in the step. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Name steps[].operations[].name The operation.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The operation.

The test account doesn't have a known value for this field.

Outcome 3 fields · from trust Not checked
Code outcome.code For a partial run, the code of the first gap other than a not_shared, unsupported, or not_read one, saying why its value was left out.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
value

For a partial run, the code of the first gap other than a not_shared, unsupported, or not_read one, saying why its value was left out.

The test account doesn't have a known value for this field.

Owner outcome.owner For a partial run, who can act on that code.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
value

For a partial run, who can act on that code.

The test account doesn't have a known value for this field.

Status outcome.status collected when the run read every value its level collects, or partial when it left values out. gaps lists each one. A not_shared or unsu...
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
value

collected when the run read every value its level collects, or partial when it left values out. gaps lists each one. A not_shared or unsupported gap does not make a run partial.

The test account doesn't have a known value for this field.

Run 6 fields · from trust Not checked
Custom ca run.custom_ca True when SSL_CERT_FILE or SSL_CERT_DIR was set for the run.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean

True when SSL_CERT_FILE or SSL_CERT_DIR was set for the run.

The test account doesn't have a known value for this field.

Finished at run.finished_at When the run finished, in RFC 3339 UTC.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

When the run finished, in RFC 3339 UTC.

The test account doesn't have a known value for this field.

Level run.level The level the run collected at, at every level. A reader uses it to tell a value the level left out from one the collector could not read...
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The level the run collected at, at every level. A reader uses it to tell a value the level left out from one the collector could not read. Absent from results of older SDKs.

The test account doesn't have a known value for this field.

Proxy run.proxy True when a proxy variable such as HTTPS_PROXY was set for the run.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean

True when a proxy variable such as HTTPS_PROXY was set for the run.

The test account doesn't have a known value for this field.

Run ID run.run_id The run ID the runner passed in EPACK_RUN_ID. Absent when it passed none.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The run ID the runner passed in EPACK_RUN_ID. Absent when it passed none.

The test account doesn't have a known value for this field.

Started at run.started_at When the run started, in RFC 3339 UTC.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

When the run started, in RFC 3339 UTC.

The test account doesn't have a known value for this field.

Signed in as 8 fields · 6 trust, 2 audit All 4 checked fields match
Auth method signed_in_as.auth_method How the collector proved its identity, such as private_key_jwt for OAuth 2.0 client credentials with a signed key assertion or api_token...
Trust
api_token
Collected in
Trust, audit, and internal runs
Type
string

How the collector proved its identity, such as private_key_jwt for OAuth 2.0 client credentials with a signed key assertion or api_token for an API token.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
signed_in_as.auth_method"api_token""api_token"Matches
ID signed_in_as.id Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Kind signed_in_as.kind The kind of principal, such as service_app, service_principal, or user.
Trust
api_key
Collected in
Trust, audit, and internal runs
Type
string

The kind of principal, such as service_app, service_principal, or user.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
signed_in_as.kind"api_key""api_key"Matches
Provider signed_in_as.provider The identity system, such as okta or microsoft-entra.
Trust
clickhouse
Collected in
Trust, audit, and internal runs
Type
string

The identity system, such as okta or microsoft-entra.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
signed_in_as.provider"clickhouse""clickhouse"Matches
Read only signed_in_as.read_only Present when the collector can show that its credential could only read.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
value

Present when the collector can show that its credential could only read.

The test account doesn't have a known value for this field.

Requested scopes signed_in_as.requested_scopes The scopes the collector asked for. A scope here and missing from scopes was not granted.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
list of strings

The scopes the collector asked for. A scope here and missing from scopes was not granted.

The test account doesn't have a known value for this field.

Scopes signed_in_as.scopes The permissions the sign-in carried.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
list of strings

The permissions the sign-in carried.

The test account doesn't have a known value for this field.

Tenant ID signed_in_as.tenant_id The tenant, account, or organization signed in to. Present at the audit and internal levels only.
Audit
Matches, value withheld
Collected in
Audit and internal runs
Type
string

The tenant, account, or organization signed in to. Present at the audit and internal levels only.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
signed_in_as.tenant_idwithheldwithheldMatches
Steps 10 fields · 4 trust, 6 audit All 2 checked fields match
Steps steps The named parts of the run, in the order they started, at every level. Absent when the collector opens none.
Trust
No more than 5 rows
Collected in
Trust, audit, and internal runs
Type
list

The named parts of the run, in the order they started, at every level. Absent when the collector opens none.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
steps[5]left outleft outMatches
Any failed steps[].any_failed True when an attempt in the step failed: one with an error code or a status of 400 or more.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean

True when an attempt in the step failed: one with an error code or a status of 400 or more.

The test account doesn't have a known value for this field.

Calls steps[].calls The calls those requests belong to. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

The calls those requests belong to. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

End ms steps[].end_ms When the step ended, in milliseconds after the run's started_at. A step still open when the collector emitted ended then. Present at the...
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

When the step ended, in milliseconds after the run's started_at. A step still open when the collector emitted ended then. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Failed steps[].failed The attempts that failed: those with an error code or a status of 400 or more. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

The attempts that failed: those with an error code or a status of 400 or more. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Name steps[].name The step's name, such as people. Step names are part of the collector's contract, like operation names.
Trust
5 values match
Collected in
Trust, audit, and internal runs
Type
string

The step's name, such as people. Step names are part of the collector's contract, like operation names.

Clickhouse · audit run · v0.1.0 · Nov 7, 2026

PathExpectedReportedResult
steps[0].name"sign_in""sign_in"Matches
steps[1].name"members""members"Matches
steps[2].name"api_keys""api_keys"Matches
steps[3].name"console_roles""console_roles"Matches
steps[4].name"databases""databases"Matches
Requests steps[].requests The requests sent in the step, including rows left out of calls.requests. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

The requests sent in the step, including rows left out of calls.requests. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Retries steps[].retries The requests that were retries. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

The requests that were retries. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Start ms steps[].start_ms When the step started, in milliseconds after the run's started_at. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
integer

When the step started, in milliseconds after the run's started_at. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Title steps[].title The step's title, such as People and sign-in methods.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The step's title, such as People and sign-in methods.

The test account doesn't have a known value for this field.

Unrecognized 3 fields · 2 trust, 1 audit Not checked
Count unrecognized[].count How many distinct values the run read that the vocabulary lacks.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
integer

How many distinct values the run read that the vocabulary lacks.

The test account doesn't have a known value for this field.

Values unrecognized[].values The first 50 of those values, sorted. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
list of strings

The first 50 of those values, sorted. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Vocabulary unrecognized[].vocabulary The vocabulary's name, such as okta.event_types.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The vocabulary's name, such as okta.event_types.

The test account doesn't have a known value for this field.

Warnings 5 fields · 3 trust, 2 audit Not checked
Fix warnings[].fix The one instruction that fixes collection. A warning has at most one of fix, no_action, and choice.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The one instruction that fixes collection. A warning has at most one of fix, no_action, and choice.

The test account doesn't have a known value for this field.

Message warnings[].message The collector's message about what happened. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The collector's message about what happened. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Missing permission warnings[].missing_permission The permission to grant, in the vendor's own terms.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
string

The permission to grant, in the vendor's own terms.

The test account doesn't have a known value for this field.

No action warnings[].no_action True when nothing needs changing now.
Trust
Not checked
Collected in
Trust, audit, and internal runs
Type
boolean

True when nothing needs changing now.

The test account doesn't have a known value for this field.

Scope warnings[].scope The account, tenant, or region affected. Present at the audit and internal levels only.
Audit
Not checked
Collected in
Audit and internal runs
Type
string

The account, tenant, or region affected. Present at the audit and internal levels only.

The test account doesn't have a known value for this field.

Foundational Controls

The controls that read this collector's evidence.

Details

Publisher
locktivity
Latest
v0.2.0
Protocol
v1

Platforms

darwin/amd64 darwin/arm64 linux/amd64 linux/arm64

Links