diff --git a/public/app/features/alerting/unified/utils/access-control.ts b/public/app/features/alerting/unified/utils/access-control.ts
index 56f4612e22d..b82631481b2 100644
--- a/public/app/features/alerting/unified/utils/access-control.ts
+++ b/public/app/features/alerting/unified/utils/access-control.ts
@@ -50,6 +50,7 @@ export const notificationsPermissions = {
export const provisioningPermissions = {
read: AccessControlAction.AlertingProvisioningRead,
+ readSecrets: AccessControlAction.AlertingProvisioningReadSecrets,
write: AccessControlAction.AlertingProvisioningWrite,
};
@@ -125,6 +126,8 @@ export function getRulesAccess() {
rulesSourceName === GRAFANA_RULES_SOURCE_NAME ? contextSrv.hasEditPermissionInFolders : contextSrv.isEditor;
return contextSrv.hasAccess(getRulesPermissions(rulesSourceName).update, permissionFallback);
},
- canReadProvisioning: contextSrv.hasAccess(provisioningPermissions.read, isOrgAdmin()),
+ canReadProvisioning:
+ contextSrv.hasAccess(provisioningPermissions.read, isOrgAdmin()) ||
+ contextSrv.hasAccess(provisioningPermissions.readSecrets, isOrgAdmin()),
};
}
diff --git a/public/app/types/accessControl.ts b/public/app/types/accessControl.ts
index 16e7a96165e..93e3a34e49f 100644
--- a/public/app/types/accessControl.ts
+++ b/public/app/types/accessControl.ts
@@ -118,6 +118,7 @@ export enum AccessControlAction {
AlertingNotificationsExternalRead = 'alert.notifications.external:read',
// Alerting provisioning actions
+ AlertingProvisioningReadSecrets = 'alert.provisioning.secrets:read',
AlertingProvisioningRead = 'alert.provisioning:read',
AlertingProvisioningWrite = 'alert.provisioning:write',