Dashboard for CockroachDB
You set up a dashboard for CockroachDB by opening the built-in admin UI on your cluster nodes. You can also link an external charting tool to your database nodes to view metrics. Most teams start by sharing one admin role across the whole group. This setup helps teams move fast at first, but broad roles create big risks later. Any user with that shared login can read or change live data without limits. How a native dashboard for CockroachDB works CockroachDB includes a built-in web console on
GitLab Security Dashboard: the complete guide
Architecture patterns, implementation strategies, and security best practices. Delivered to your inbox.
You set up a dashboard for CockroachDB by opening the built-in admin UI on your cluster nodes. You can also link an external charting tool to your database nodes to view metrics. Most teams start by sharing one admin role across the whole group. This setup helps teams move fast at first, but broad roles create big risks later. Any user with that shared login can read or change live data without limits.
How a native dashboard for CockroachDB works
CockroachDB includes a built-in web console on every node in the cluster. This console shows node health, SQL query stats, and active sessions in real time. To use it, an admin creates a database user with a password or certificate. The cluster checks these details against its internal user table during login. Once inside, the user can view cluster charts, check slow queries, and inspect table stats.
Many teams also build a custom dashboard for CockroachDB using outside reporting tools. In this setup, the reporting app logs in using a standard database user role. Admins grant read rules to this role on specific databases or tables. The cluster then lets the tool run select queries to build charts for the team. Admins can also set up role rules to separate normal viewers from cluster managers. A viewer role only reads metrics, while an admin role can stop queries and change settings.
What native roles solve and where gaps remain
Native database roles do a good job of controlling who can log in. They let you split users into basic groups like admins and read-only viewers. This stops a basic chart viewer from dropping a table by mistake. Native controls also let you block logins from unknown network locations.
Still, native roles only check who logs in at the start of a session. They do not inspect what each query does while it runs in flight. If a dashboard or user has read rights on a customer table, they get everything. Every query returns raw emails, phone numbers, card numbers, and national IDs in plain text. Native roles cannot rewrite matched fields in results to hide private data on the fly. Also, teams often share one login for a shared charting tool. When someone runs a bad query through that tool, the cluster log only shows the shared role. You cannot tell which team member ran the query or why they needed it. You also cannot require a peer to approve a risky query before it runs.
GitLab Security Dashboard: architecture patterns and best practices
Continue reading? Get the full guide.
Free. No spam. Unsubscribe anytime.
Managing query risks in shared database views
When engineers fix live issues, they often move from viewing charts to running direct queries. Giving them direct database logins means handing out keys that last too long. A forgotten user account or leaked password gives an attacker full access to your data. Rotating these keys across many people and apps takes a lot of manual work.
To stay safe, teams need a way to link every query to a real person. They also need to filter private fields out of query results before data leaves the cluster. Separating cluster health views from raw table reads keeps day-to-day work safe and clean.
Check database and API queries on the wire
Identity tools, roles, and network rules decide who opens a session. Setup alone cannot check what each query does or mask sensitive values in a response once a session starts. When workflows touch Postgres, MySQL, SQL Server, MongoDB, ClickHouse, Kubernetes APIs, SSH, or internal HTTP APIs, hoop.dev sits inline in the wire protocol beside those services as an open-source proxy, a sidecar for your Postgres or API. On every query an AI agent or engineer runs against production, hoop.dev decides to pass, mask, block, or hold it for human review.
Your login details and client tools stay as they are while hoop.dev guardrails refuse bad deletes or drops before they run, and hoop.dev data masking rewrites matched sensitive values in responses in memory. Furthermore, hoop.dev holds SOC 2 Type II, is MIT licensed, and writes every query and decision to an audit trail that generates evidence for HIPAA, GDPR, and PCI DSS. See the source on GitHub.
Frequently asked questions
Can I use the built-in CockroachDB console without giving full admin rights?
Yes, you can assign a non-admin SQL role to a user for basic console views. Non-admin users can still see cluster health and basic stats without full control over settings.
Why do shared dashboard logins cause audit problems?
A shared login ties every action from many people to a single database user name. When an issue happens, your logs cannot show which person actually ran the query.
How can we protect private data when teams run SQL queries?
Data masking rewrites matched fields in results for emails, phone numbers, card numbers, and national IDs. This lets engineers check table rows and fix bugs while keeping sensitive values hidden.
Related guides
In this post