grafana/pkg/services
Ieva cfa1a2c55f
RBAC: Split non-empty scopes into kind, attribute and identifier fields for better search performance (#71933)
* add a feature toggle

* add the fields for attribute, kind and identifier to permission

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>

* set the new fields when new permissions are stored

* add migrations

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>

* remove comments

* Update pkg/services/accesscontrol/migrator/migrator.go

Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>

* feedback: put column migrations behind the feature toggle, added an index, changed how wildcard scopes are split

* PR feedback: add a comment and revert an accidentally changed file

* PR feedback: handle the case with : in resource identifier

* switch from checking feature toggle through cfg to checking it through featuremgmt

* don't put the column migrations behind a feature toggle after all - this breaks permission queries from db

---------

Co-authored-by: Kalle Persson <kalle.persson@grafana.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2023-07-21 15:23:01 +01:00
..
accesscontrol RBAC: Split non-empty scopes into kind, attribute and identifier fields for better search performance (#71933) 2023-07-21 15:23:01 +01:00
alerting PublicDashboards: Audit table pagination (#69823) 2023-06-21 10:48:09 -03:00
annotations Annotations: Fix database lock while updating annotations (#71199) 2023-07-07 15:21:49 +02:00
anonymous AnonymousService: Test tagging service (#64708) 2023-03-14 10:47:34 +01:00
apikey RBAC: remove simple RBAC disabled checks (#71137) 2023-07-10 15:14:21 +03:00
auth Auth: Respect cache control for JWKS in auth.jwt (#68872) 2023-05-23 12:29:10 +02:00
authn OAuth: Introduce user_refresh_token setting and make it default for the selected providers (#71533) 2023-07-14 14:03:01 +02:00
caching Fixing typos (#70487) 2023-06-22 09:43:38 +01:00
certgenerator Chore: Add grafana-apiserver (#70721) 2023-07-14 12:22:10 -07:00
cleanup Chore: Fix goimports grouping in pkg/services (#62420) 2023-01-30 08:21:27 +00:00
contexthandler Chore: Add grafana-apiserver (#70721) 2023-07-14 12:22:10 -07:00
correlations Correlations: Create paginated API (#65241) 2023-07-05 09:37:17 -05:00
dashboardimport RBAC: Remove legacy ac from authorization middleware (#68898) 2023-05-24 09:49:42 +01:00
dashboards RBAC: search v1 permission filter part 1 - cleanup & updating tests (#71913) 2023-07-19 10:37:27 +01:00
dashboardsnapshots Snapshots: Add snapshot enable config (#61587) 2023-01-26 10:28:11 -03:00
dashboardversion API: Fix "Updated by" Column in dashboard versions table (#65351) 2023-03-30 17:31:53 +03:00
datasourceproxy Caching: Refactor enterprise query caching middleware to a wire service (#65616) 2023-04-12 12:30:33 -04:00
datasources SSE: DSNode to update result with names to make each value identifiable by labels (only Graphite and TestData) (#71246) 2023-07-20 14:44:12 -04:00
encryption Secrets: Make the Migrator extensible (#67307) 2023-06-19 23:44:01 +02:00
featuremgmt RBAC: Split non-empty scopes into kind, attribute and identifier fields for better search performance (#71933) 2023-07-21 15:23:01 +01:00
folder RBAC: remove simple RBAC disabled checks (#71137) 2023-07-10 15:14:21 +03:00
grafana-apiserver Chore: Add grafana-apiserver (#70721) 2023-07-14 12:22:10 -07:00
grpcserver gRPC Server: Instrument requests made to the server. (#71914) 2023-07-19 16:01:54 +02:00
guardian RBAC: Split non-empty scopes into kind, attribute and identifier fields for better search performance (#71933) 2023-07-21 15:23:01 +01:00
hooks chore: move user_auth models to (mostly) login service (#62269) 2023-01-27 13:36:54 -05:00
kmsproviders Secrets: Make the Migrator extensible (#67307) 2023-06-19 23:44:01 +02:00
ldap Auth: Resolve isGrafanaAdmin for debug logging (#71145) 2023-07-10 11:14:51 +02:00
libraryelements PublicDashboards: Audit table pagination (#69823) 2023-06-21 10:48:09 -03:00
librarypanels RBAC: Update library element tests to use RBAC (#66782) 2023-04-20 12:24:41 +03:00
licensing Chore: Clean up old navigation (#66287) 2023-04-14 09:43:11 +01:00
live Chore: Update golangci-lint to v1.53.3 (#71771) 2023-07-18 10:03:35 +02:00
login AuthN: Lock down manual role updates for users synced through Grafana Com portal (#72044) 2023-07-21 15:22:28 +01:00
loginattempt Chore: Remove result field from loginattempt (#65117) 2023-03-22 21:25:29 +01:00
navtree Plugins: Migrate PluginStore mock to pre-existing fakes package (#71664) 2023-07-17 10:21:44 +00:00
ngalert SSE: Use errutil to show better error messages in prod (#71658) 2023-07-21 06:38:29 -04:00
notifications Chore: Remove result field from notifications (#65170) 2023-03-28 13:44:15 +02:00
oauthserver SaveExternalService (OAuth) on plugin load (#69764) 2023-06-26 16:38:43 +02:00
oauthtoken OAuth: Introduce user_refresh_token setting and make it default for the selected providers (#71533) 2023-07-14 14:03:01 +02:00
org Auth: Add empty role definition (#64694) 2023-07-06 15:40:06 +02:00
playlist Kinds: Use apimachinery ObjectMeta for metadata (#68668) 2023-05-24 09:13:44 -07:00
plugindashboards Plugins: Add file store abstraction for handling plugin files (#65432) 2023-03-29 12:55:55 +02:00
pluginsintegration Plugins: Angular detector: Add database cache store for remote patterns (#70693) 2023-07-06 17:34:27 +03:00
preference Chore: remove i18n toggle (#69389) 2023-06-02 09:24:40 +01:00
provisioning Alerting: Add contact point provisioning file export (#71692) 2023-07-20 14:35:56 -04:00
publicdashboards AccessControl: Remove acmock.New from accesscontrol service tests (#71942) 2023-07-20 10:00:46 +02:00
query Plugins: Migrate PluginStore mock to pre-existing fakes package (#71664) 2023-07-17 10:21:44 +00:00
queryhistory Query History: Remove migration (#67470) 2023-04-28 16:03:51 +01:00
quota Plugins: Migrate PluginStore mock to pre-existing fakes package (#71664) 2023-07-17 10:21:44 +00:00
rendering Rendering: Experimental support to use JWTs as auth method (#60841) 2023-04-03 18:53:38 +02:00
screenshot Alerting: Fix a bug taking screenshots with Dashboard UID (#63220) 2023-02-09 15:23:01 -05:00
search Chore: Remove result field from search (#65583) 2023-03-30 11:28:12 +02:00
searchusers Swagger: Fix response for the search users endpoint (#71272) 2023-07-13 11:35:03 +03:00
searchV2 RBAC: search v1 permission filter part 1 - cleanup & updating tests (#71913) 2023-07-19 10:37:27 +01:00
secrets Secrets: Make the Migrator extensible (#67307) 2023-06-19 23:44:01 +02:00
serviceaccounts AccessControl: Remove acmock.New from accesscontrol service tests (#71942) 2023-07-20 10:00:46 +02:00
shorturls Chore: Replace short UID generation with more standard UUIDs (#62731) 2023-02-06 20:44:37 -05:00
signingkeys AuthN: Embed an OAuth2 server for external service authentication (#68086) 2023-05-25 15:38:30 +02:00
sqlstore RBAC: Split non-empty scopes into kind, attribute and identifier fields for better search performance (#71933) 2023-07-21 15:23:01 +01:00
star API: Fix status code when starring already starred dashboard (#63478) 2023-05-11 11:37:36 +03:00
stats UsageStats: Add database age and driver (#66535) 2023-04-17 18:27:04 -07:00
store Plugins: Migrate PluginStore mock to pre-existing fakes package (#71664) 2023-07-17 10:21:44 +00:00
supportbundles RBAC: remove some IsDisabled checks (#69272) 2023-05-31 09:58:57 +01:00
tag Annotations: Ignore unique constraint violations for tags (#65935) 2023-04-18 14:21:38 +02:00
team Kinds: Use apimachinery ObjectMeta for metadata (#68668) 2023-05-24 09:13:44 -07:00
temp_user Users: Enable case insensitive login by default (#66134) 2023-04-28 16:38:58 +01:00
updatechecker Plugins: Migrate PluginStore mock to pre-existing fakes package (#71664) 2023-07-17 10:21:44 +00:00
user AuthZ: Extend /api/search to work with self-contained permissions (#70749) 2023-07-12 12:31:36 +02:00
validations chore: move validations model into the validations service (#61953) 2023-01-23 15:10:14 -05:00