@@ -17,18 +17,21 @@ func GetDataSources(c *m.ReqContext) Response {
17
17
return Error (500 , "Failed to query datasources" , err )
18
18
}
19
19
20
- permissions := map [int64 ]m.DsPermissionType {}
21
- permissionsQuery := m.GetDataSourcePermissionsForUserQuery {User : c .SignedInUser }
22
- if err := bus .Dispatch (& permissionsQuery ); err != nil {
20
+ dsFilterQuery := m.DatasourcesPermissionFilterQuery {
21
+ User : c .SignedInUser ,
22
+ Datasources : query .Result ,
23
+ }
24
+
25
+ if err := bus .Dispatch (& dsFilterQuery ); err != nil {
23
26
if err != bus .ErrHandlerNotFound {
24
- return Error (500 , "failed to read datasource permissions " , err )
27
+ return Error (500 , "Could not get datasources " , err )
25
28
}
26
- } else {
27
- permissions = permissionsQuery .Result
29
+
30
+ dsFilterQuery . Result = query .Result
28
31
}
29
32
30
33
result := make (dtos.DataSourceList , 0 )
31
- for _ , ds := range query .Result {
34
+ for _ , ds := range dsFilterQuery .Result {
32
35
dsItem := dtos.DataSourceListItemDTO {
33
36
OrgId : ds .OrgId ,
34
37
Id : ds .Id ,
@@ -45,13 +48,6 @@ func GetDataSources(c *m.ReqContext) Response {
45
48
ReadOnly : ds .ReadOnly ,
46
49
}
47
50
48
- if permission , ok := permissions [ds .Id ]; ok {
49
- c .Logger .Info ("Found permission" , "permission" , permission )
50
- if permission == m .DsPermissionNoAccess {
51
- continue
52
- }
53
- }
54
-
55
51
if plugin , exists := plugins .DataSources [ds .Type ]; exists {
56
52
dsItem .TypeLogoUrl = plugin .Info .Logos .Small
57
53
} else {
0 commit comments