Skip to content

Commit 1e9d341

Browse files
authored
DOC-11529 Docs for sec/authz: refine Roles on CC console (Metrics viewer role on CockroachDB Cloud) (#20329)
- In authorization.md, added sections for Cluster Monitor and Metrics Viewer with limited access note. - In cloud-roles-table.md, added columns for Cluster Monitor and Metrics Viewer with limited access note, row for View sql activity, and links in column headers. - In export-metrics-advanced.md, export-metrics.md, export-logs-advanced.md and export-logs.md, added link to Metrics Viewer. - In insights-page.md, jobs-page.md, sessions-page.md, statements-page.md, transactions-page.md, added link to Cluster Monitor. - In metrics.md, added link to Metrics Viewer. - In cockroachdb-feature-availability, added section under limited access for Metrics Viewer and Cluster Monitor roles.
1 parent e65a322 commit 1e9d341

14 files changed

+98
-45
lines changed

src/current/_includes/cockroachcloud/org-roles/cloud-roles-table.md

Lines changed: 38 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -2,53 +2,55 @@ The following table describes the high level permissions given by each Cockroach
22

33
<div class="roles-table" markdown="1">
44

5-
| | Org. Member | Org. Admin | Billing Coord. | Cluster Creator | Cluster Operator | Cluster Admin | Cluster Developer | Folder Admin | Folder Mover |
6-
|---|-------------|-------------|------------------|------------------|-------------------|----------------|--------------------|----------------|----------------|
5+
| | [Org. Member]({% link cockroachcloud/authorization.md %}#organization-member) | [Org. Admin]({% link cockroachcloud/authorization.md %}#organization-admin) | [Billing Coord.]({% link cockroachcloud/authorization.md %}#billing-coordinator) | [Cluster Creator]({% link cockroachcloud/authorization.md %}#cluster-creator) | [Cluster Operator]({% link cockroachcloud/authorization.md %}#cluster-operator) | [Cluster Admin]({% link cockroachcloud/authorization.md %}#cluster-admin) | [Cluster Developer]({% link cockroachcloud/authorization.md %}#cluster-developer) | [Cluster Monitor]({% link cockroachcloud/authorization.md %}#cluster-monitor)<sup id="fnref1"><a href="#fn1">1</a></sup> | [Metrics Viewer]({% link cockroachcloud/authorization.md %}#metrics-viewer)<sup id="fnref1"><a href="#fn1">1</a></sup> | [Folder Admin]({% link cockroachcloud/authorization.md %}#folder-admin) | [Folder Mover]({% link cockroachcloud/authorization.md %}#folder-mover) |
6+
|---|-------------|-------------|------------------|------------------|-------------------|----------------|--------------------|------------------|----------------|----------------|----------------|
77
| **User/Access Management** | | | | | | | | | |
8-
| Assign and revoke roles ||||||||||
9-
| Assign {{ site.data.products.cloud }} user and service account roles ||||||||||
10-
| Manage SQL users ||||||||||
11-
| Manage {{ site.data.products.cloud }} users and service accounts ||||||||||
12-
| Apply roles at the [folder]({% link cockroachcloud/folders.md %}) scope ||||||||||
8+
| Assign and revoke roles ||||||||||||
9+
| Assign {{ site.data.products.cloud }} user and service account roles ||||||||||||
10+
| Manage SQL users ||||||||||||
11+
| Manage {{ site.data.products.cloud }} users and service accounts ||||||||||||
12+
| Apply roles at the [folder]({% link cockroachcloud/folders.md %}) scope |||||||| || ||
1313
| **Cluster & Infrastructure** | | | | | | | | | |
14-
| Create cluster or [private cluster]({% link cockroachcloud/private-clusters.md %}) ||||||||||
15-
| Create / edit / delete cluster ||||||||||
16-
| Edit / delete clusters created by this user ||||||||||
17-
| Create / delete / manage [folders]({% link cockroachcloud/folders.md %}) ||||||||||
18-
| Move cluster between [folders]({% link cockroachcloud/folders.md %}) ||||||||||
19-
| Scale nodes ||||||||||
20-
| Upgrade CockroachDB ||||||||||
21-
| Configure [maintenance windows]({% link cockroachcloud/advanced-cluster-management.md %}#set-a-maintenance-window) ||||||||||
22-
| Use the [{{ site.data.products.cloud }} Terraform provider]({% link cockroachcloud/provision-a-cluster-with-terraform.md %}) ||||||||||
14+
| Create cluster or [private cluster]({% link cockroachcloud/private-clusters.md %}) ||||||||||||
15+
| Create / edit / delete cluster ||||||||||||
16+
| Edit / delete clusters created by this user ||||||||||||
17+
| Create / delete / manage [folders]({% link cockroachcloud/folders.md %}) |||||||| || ||
18+
| Move cluster between [folders]({% link cockroachcloud/folders.md %}) ||||||||| || |
19+
| Scale nodes ||||||||||||
20+
| Upgrade CockroachDB ||||||||||||
21+
| Configure [maintenance windows]({% link cockroachcloud/advanced-cluster-management.md %}#set-a-maintenance-window) ||||||||||||
22+
| Use the [{{ site.data.products.cloud }} Terraform provider]({% link cockroachcloud/provision-a-cluster-with-terraform.md %}) ||||||||||||
2323
| **Monitoring & Observability** | | | | | | | | | |
24-
| View cluster details ||||||||||
25-
| View [audit logs]({% link cockroachcloud/cloud-org-audit-logs.md %}) ||||||||||
26-
| View [insights]({% link cockroachcloud/insights-page.md %}) ||||||||||
27-
| View [jobs]({% link cockroachcloud/jobs-page.md %}) ||||||||||
28-
| View [metrics]({% link cockroachcloud/metrics.md %}) ||||||||||
29-
| Send [test alerts]({% link cockroachcloud/alerts-page.md %}#send-a-test-alert) ||||||||||
30-
| Access [DB console]({% link cockroachcloud/network-authorization.md %}#db-console) ||||||||||
24+
| View cluster details ||||||||||||
25+
| View [audit logs]({% link cockroachcloud/cloud-org-audit-logs.md %}) ||||||||||||
26+
| View [insights]({% link cockroachcloud/insights-page.md %}) ||||||||||||
27+
| View [jobs]({% link cockroachcloud/jobs-page.md %}) ||||||||||||
28+
| View [sql activity]({% link cockroachcloud/statements-page.md %}) ||||||||||||
29+
| View [metrics]({% link cockroachcloud/metrics.md %}) ||||||||||||
30+
| Send [test alerts]({% link cockroachcloud/alerts-page.md %}#send-a-test-alert) ||||||||||||
31+
| Access [DB console]({% link cockroachcloud/network-authorization.md %}#db-console) ||||||||||||
3132
| **Security** | | | | | | | | | |
32-
| Configure [cluster SSO]({% link cockroachcloud/cloud-sso-sql.md %}) ||||||||||
33-
| Manage [egress perimeter controls]({% link cockroachcloud/egress-perimeter-controls.md %}) ||||||||||
34-
| Manage [network authorization]({% link cockroachcloud/network-authorization.md %}) ||||||||||
35-
| View PCI status ||||||||||
33+
| Configure [cluster SSO]({% link cockroachcloud/cloud-sso-sql.md %}) ||||||||||||
34+
| Manage [egress perimeter controls]({% link cockroachcloud/egress-perimeter-controls.md %}) ||||||||||||
35+
| Manage [network authorization]({% link cockroachcloud/network-authorization.md %}) ||||||||||||
36+
| View PCI status ||||||||||||
3637
| **Database & Data** | | | | | | | | | |
37-
| Manage databases ||||||||||
38-
| View / restore [backups]({% link cockroachcloud/backup-and-restore-overview.md %}) ||||||||||
38+
| Manage databases ||||||||||||
39+
| View / restore [backups]({% link cockroachcloud/backup-and-restore-overview.md %}) ||||||||||||
3940
| **Billing & Licensing** | | | | | | | | | |
40-
| Manage [billing]({% link cockroachcloud/billing-management.md %}) ||||||||||
41-
| Manage [email alerts]({% link cockroachcloud/alerts-page.md %}#configure-alerts) ||||||||||
42-
| Manage CockroachDB [Self-Hosted cluster licenses]({% link {{ site.current_cloud_version }}/licensing-faqs.md %}#obtain-a-license) ||||||||||
41+
| Manage [billing]({% link cockroachcloud/billing-management.md %}) ||||||||||||
42+
| Manage [email alerts]({% link cockroachcloud/alerts-page.md %}#configure-alerts) ||||||||||||
43+
| Manage CockroachDB [Self-Hosted cluster licenses]({% link {{ site.current_cloud_version }}/licensing-faqs.md %}#obtain-a-license) ||||||||||||
4344

4445
</div>
46+
<a id="fn1"><sup>1</sup></a>**This feature is in [limited access]({% link {{ site.current_cloud_version }}/cockroachdb-feature-availability.md %})** and is only available to enrolled organizations. To enroll your organization, contact your Cockroach Labs account team. This feature is subject to change.
4547

4648
Some roles can be assigned to users at specific levels of scope to provide more granular permission control:
4749

4850
| **Scope level** | **Description** | **Applicable roles** |
4951
|---|---|---|
50-
| `Organization` | Applies to the entire CockroachDB {{ site.data.products.cloud }} organization, including all clusters and folders | `Cluster Operator`, `Cluster Admin`, `Cluster Creator`, `Cluster Developer`, `Billing Coordinator`, `Organization Admin`, `Folder Admin`, `Folder Mover` |
51-
| `Folder` | Applies to clusters within a specific [folder]({% link cockroachcloud/folders.md %}). Only available as a selectable scope if folders have been created within the organization by a user with the `Folder Admin` role | `Cluster Operator`, `Cluster Admin`, `Cluster Creator`, `Cluster Developer`, `Folder Admin`, `Folder Mover` |
52-
| `Cluster` | Applies to a specific cluster | `Cluster Operator`, `Cluster Admin`, `Cluster Developer` |
52+
| `Organization` | Applies to the entire CockroachDB {{ site.data.products.cloud }} organization, including all clusters and folders | `Cluster Operator`, `Cluster Admin`, `Cluster Creator`, `Cluster Developer`, `Cluster Monitor`, `Metrics Viewer`, `Billing Coordinator`, `Organization Admin`, `Folder Admin`, `Folder Mover` |
53+
| `Folder` | Applies to clusters within a specific [folder]({% link cockroachcloud/folders.md %}). Only available as a selectable scope if folders have been created within the organization by a user with the `Folder Admin` role | `Cluster Operator`, `Cluster Admin`, `Cluster Creator`, `Cluster Developer`, `Cluster Monitor`, `Metrics Viewer`, `Folder Admin`, `Folder Mover` |
54+
| `Cluster` | Applies to a specific cluster | `Cluster Operator`, `Cluster Admin`, `Cluster Developer`, `Cluster Monitor`, `Metrics Viewer` |
5355

54-
{% if page.name != 'authorization.md' %}For more information on these roles and the specific permissions given, see [Organization user roles]({% link cockroachcloud/authorization.md %}#organization-member).{% endif %}
56+
{% if page.name != 'authorization.md' %}For more information on these roles and the specific permissions given, see [Organization user roles]({% link cockroachcloud/authorization.md %}#organization-member).{% endif %}

src/current/cockroachcloud/authorization.md

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,10 +132,37 @@ This role can be assigned at the scope of the organization or on a folder. If as
132132

133133
### Cluster Developer
134134

135-
The **Cluster Developer** role allows users view cluster details and access the [DB Console]({% link cockroachcloud/network-authorization.md %}#db-console), allowing them to [export a connection string from the cluster page UI]({% link cockroachcloud/authentication.md %}#the-connection-string), although they will still need a Cluster Admin to [provision their SQL credentials]({% link cockroachcloud/managing-access.md %}#manage-sql-users-on-a-cluster) for the cluster.
135+
The **Cluster Developer** role allows users to view cluster details and access the [DB Console]({% link cockroachcloud/network-authorization.md %}#db-console), allowing them to [export a connection string from the cluster page UI]({% link cockroachcloud/authentication.md %}#the-connection-string), although they will still need a Cluster Admin to [provision their SQL credentials]({% link cockroachcloud/managing-access.md %}#manage-sql-users-on-a-cluster) for the cluster.
136136

137137
This role can be assigned at the scope of the organization, on an individual cluster, or on a folder. If assigned to a folder, it is inherited on the folder's clusters, descendent folders, and their descendants.
138138

139+
### Cluster Monitor
140+
141+
{{site.data.alerts.callout_info}}
142+
{% include feature-phases/limited-access.md %}
143+
{{site.data.alerts.end}}
144+
145+
The **Cluster Monitor** role provides read‑only visibility into SQL activity and workload health without broader administrative privileges. Users with this role can view the SQL Activity pages ([Sessions]({% link cockroachcloud/sessions-page.md %}), [Statements]({% link cockroachcloud/statements-page.md %}), and [Transactions]({% link cockroachcloud/transactions-page.md %})), the [Jobs page]({% link cockroachcloud/jobs-page.md %}), and the [Insights page]({% link cockroachcloud/insights-page.md %}).
146+
147+
This role can be assigned at the scope of the organization, on an individual cluster, or on a folder. If assigned to a folder, it is inherited on the folder's clusters, descendent folders, and their descendants.
148+
149+
### Metrics Viewer
150+
151+
{{site.data.alerts.callout_info}}
152+
{% include feature-phases/limited-access.md %}
153+
{{site.data.alerts.end}}
154+
155+
The **Metrics Viewer** role grants read‑only access to observability metrics for a cluster without any administrative or data‑manipulation privileges.
156+
157+
- Users with this role can view a cluster's Metrics from the [Metrics page]({% link cockroachcloud/metrics.md %}#cockroachdb-cloud-console-metrics-page).
158+
- Service accounts with this role can access the [metrics export API]({% link cockroachcloud/export-metrics.md %}#the-metricexport-endpoint) and the [log export API]({% link cockroachcloud/export-logs.md %}#the-logexport-endpoint) to integrate with external observability systems.
159+
160+
This role can be assigned at the scope of the organization, on an individual cluster, or on a folder. If assigned to a folder, it is inherited on the folder's clusters, descendent folders, and their descendants.
161+
162+
{{site.data.alerts.callout_info}}
163+
To give a developer the ability to both connect to a cluster and monitor performance with least privilege, combine [**Cluster Developer**](#cluster-developer) with **Metrics Viewer** (and optionally [**Cluster Monitor**](#cluster-monitor)).
164+
{{site.data.alerts.end}}
165+
139166
### Folder Admin
140167

141168
{% capture folder_admin_docs %}{% include cockroachcloud/org-roles/folder-admin.md %}{% endcapture %}

src/current/cockroachcloud/export-logs-advanced.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ Access to the `logexport` endpoint requires a valid CockroachDB {{ site.data.pro
2424
- [Organization Admin]({% link cockroachcloud/authorization.md %}#organization-admin)
2525
- [Cluster Admin]({% link cockroachcloud/authorization.md %}#cluster-admin)
2626
- [Cluster Operator]({% link cockroachcloud/authorization.md %}#cluster-operator)
27+
- [Metrics Viewer]({% link cockroachcloud/authorization.md %}#metrics-viewer)
2728

2829
The following methods are available for use with the `logexport` endpoint:
2930

src/current/cockroachcloud/export-logs.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ Access to the `logexport` endpoint requires a valid CockroachDB {{ site.data.pro
2424
- [Organization Admin]({% link cockroachcloud/authorization.md %}#organization-admin)
2525
- [Cluster Admin]({% link cockroachcloud/authorization.md %}#cluster-admin)
2626
- [Cluster Operator]({% link cockroachcloud/authorization.md %}#cluster-operator)
27+
- [Metrics Viewer]({% link cockroachcloud/authorization.md %}#metrics-viewer)
2728

2829
The following methods are available for use with the `logexport` endpoint:
2930

src/current/cockroachcloud/export-metrics-advanced.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,11 @@ Datadog | `https://cockroachlabs.cloud/api/v1/clusters/{your_cluster_
2727
Prometheus | `https://cockroachlabs.cloud/api/v1/clusters/{your_cluster_id}/metricexport/prometheus`
2828
Azure Monitor | `https://cockroachlabs.cloud/api/v1/clusters/{your_cluster_id}/metricexport/azuremonitor`
2929

30-
Access to the `metricexport` endpoints requires a valid CockroachDB {{ site.data.products.cloud }} [service account]({% link cockroachcloud/managing-access.md %}#manage-service-accounts) with the appropriate permissions (`admin` privilege, Cluster Admin role, or Cluster Operator role).
30+
Access to the `metricexport` endpoints requires a valid CockroachDB {{ site.data.products.cloud }} [service account]({% link cockroachcloud/managing-access.md %}#manage-service-accounts) assigned one of the following [roles]({% link cockroachcloud/managing-access.md %}#edit-roles-on-a-service-account):
31+
32+
- [Metrics Viewer]({% link cockroachcloud/authorization.md %}#metrics-viewer)
33+
- [Cluster Operator]({% link cockroachcloud/authorization.md %}#cluster-operator)
34+
- [Cluster Admin]({% link cockroachcloud/authorization.md %}#cluster-admin)
3135

3236
The following methods are available for use with the `metricexport` endpoints, and require the listed service account permissions:
3337

src/current/cockroachcloud/export-metrics.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,11 @@ Amazon CloudWatch | `https://cockroachlabs.cloud/api/v1/clusters/{your_cluster_
2626
Datadog | `https://cockroachlabs.cloud/api/v1/clusters/{your_cluster_id}/metricexport/datadog`
2727
Prometheus | `https://cockroachlabs.cloud/api/v1/clusters/{your_cluster_id}/metricexport/prometheus`
2828

29-
Access to the `metricexport` endpoints requires a valid CockroachDB {{ site.data.products.cloud }} [service account]({% link cockroachcloud/managing-access.md %}#manage-service-accounts) with the appropriate permissions (`admin` privilege or Cluster Admin role).
29+
Access to the `metricexport` endpoints requires a valid CockroachDB {{ site.data.products.cloud }} [service account]({% link cockroachcloud/managing-access.md %}#manage-service-accounts) assigned one of the following [roles]({% link cockroachcloud/managing-access.md %}#edit-roles-on-a-service-account):
30+
31+
- [Metrics Viewer]({% link cockroachcloud/authorization.md %}#metrics-viewer)
32+
- [Cluster Operator]({% link cockroachcloud/authorization.md %}#cluster-operator)
33+
- [Cluster Admin]({% link cockroachcloud/authorization.md %}#cluster-admin)
3034

3135
The following methods are available for use with the `metricexport` endpoints, and require the listed service account permissions:
3236

0 commit comments

Comments
 (0)