Skip to content

Additional Reporting CSVs via API / Event Logs#43

Open
sshadminBW wants to merge 1 commit intobitwarden-labs:mainfrom
sshadminBW:PublicAPI
Open

Additional Reporting CSVs via API / Event Logs#43
sshadminBW wants to merge 1 commit intobitwarden-labs:mainfrom
sshadminBW:PublicAPI

Conversation

@sshadminBW
Copy link
Copy Markdown

Bash script that pulls event log data from the Bitwarden Public API and produces up to ten targeted security and compliance audit reports as CSV files, alongside a timestamped run log.

Reports cover: offboarding exposure, dormant users, security alerts, brute force detection, after-hours access, item access history, new device logins, licence utilisation, privilege changes, and a full raw event export.

Supports Bitwarden US cloud, EU cloud, and self-hosted instances. Credentials can be supplied via environment variables, interactive prompt, or a GPG/openssl-encrypted credentials file. Access tokens are cached per-org for up to 55 minutes to avoid unnecessary re-authentication.

Event fetch depth is controlled via HISTORY_DAYS, MAX_PAGES, or MAX_EVENTS. Multi-org (MSP) mode is supported via an orgs CSV file, writing reports to per-org subdirectories. A schedule helper prints ready-to-use crontab and systemd timer/service units for automated runs.

Requires: bash 4+, curl, jq.

Bash script that pulls event log data from the Bitwarden Public API and
produces up to ten targeted security and compliance audit reports as CSV
files, alongside a timestamped run log.

Reports cover: offboarding exposure, dormant users, security alerts,
brute force detection, after-hours access, item access history, new device
logins, licence utilisation, privilege changes, and a full raw event export.

Supports Bitwarden US cloud, EU cloud, and self-hosted instances. Credentials
can be supplied via environment variables, interactive prompt, or a
GPG/openssl-encrypted credentials file. Access tokens are cached per-org
for up to 55 minutes to avoid unnecessary re-authentication.

Event fetch depth is controlled via HISTORY_DAYS, MAX_PAGES, or MAX_EVENTS.
Multi-org (MSP) mode is supported via an orgs CSV file, writing reports to
per-org subdirectories. A schedule helper prints ready-to-use crontab and
systemd timer/service units for automated runs.

Requires: bash 4+, curl, jq.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant