Check add DS permissions in advanced DS picker (#67237)

This commit is contained in:
Ivan Ortega Alba 2023-04-27 16:51:31 +02:00 committed by GitHub
parent b94fceddad
commit 4d96afa979
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -16,9 +16,11 @@ import {
Icon,
} from '@grafana/ui';
import { config } from 'app/core/config';
import { contextSrv } from 'app/core/core';
import { ROUTES as CONNECTIONS_ROUTES } from 'app/features/connections/constants';
import * as DFImport from 'app/features/dataframe-import';
import { DATASOURCES_ROUTES } from 'app/features/datasources/constants';
import { AccessControlAction } from 'app/types';
import { DataSourceList } from './DataSourceList';
@ -51,6 +53,7 @@ export function DataSourceModal({
}: DataSourceModalProps) {
const styles = useStyles2(getDataSourceModalStyles);
const [search, setSearch] = useState('');
const hasCreateRights = contextSrv.hasPermission(AccessControlAction.DataSourcesCreate);
const analyticsInteractionSrc = reportedInteractionFrom || 'modal';
const newDataSourceURL = config.featureToggles.dataConnectionsConsole
? CONNECTIONS_ROUTES.DataSourcesNew
@ -147,6 +150,8 @@ export function DataSourceModal({
<LinkButton
variant="secondary"
href={newDataSourceURL}
disabled={!hasCreateRights}
tooltip={!hasCreateRights ? 'You do not have permission to configure new data sources' : undefined}
onClick={() => {
reportInteraction(INTERACTION_EVENT_NAME, {
item: INTERACTION_ITEM.CONFIG_NEW_DS,