grafana/pkg/models
Jeremy Price 6dbb6408d4
Access Control: Add service accounts (#38994)
* Add extra fields to OSS types to support enterprise

* Create a service account at the same time as the API key

* Use service account credentials when accessing API with APIkey

* Add GetRole to service, merge RoleDTO and Role structs

This patch merges the identical OSS and Enterprise data structures, which improves the code for two reasons:

1.  Makes switching between OSS and Enterprise easier
2.  Reduces the chance of incompatibilities developing between the same functions in OSS and Enterprise

* If API key is not linked to a service account, continue login as usual

* Fallback to old auth if no service account linked to key

* Add CloneUserToServiceAccount

* Adding LinkAPIKeyToServiceAccount

* Handle api key link error

* Better error messages for OSS accesscontrol

* Set an invalid user id as default

* Re-arrange field names

* ServiceAccountId is integer

* Better error messages

Co-authored-by: Hugo Häggmark <hugo.haggmark@grafana.com>
Co-authored-by: Eric Leijonmarck <eric.leijonmarck@gmail.com>
Co-authored-by: Emil Tullstedt <emil.tullstedt@grafana.com>
Co-authored-by: Ieva <ieva.vasiljeva@grafana.com>
Co-authored-by: Gabriel MABILLE <gamab@users.noreply.github.com>
2021-10-20 14:36:11 +02:00
..
address.go feat(organization): added update org address to http api and to org details settings view, closes #2672 2015-09-08 14:22:44 +02:00
alert_notifications.go Encryption: Refactor securejsondata.SecureJsonData to stop relying on global functions (#38865) 2021-10-07 17:33:50 +03:00
alert_test.go Chore: Rewrite models alert test to standard library (#30021) 2021-01-01 13:18:47 +01:00
alert.go PluginManager: Make Plugins, Renderer and DataSources non-global (#31866) 2021-03-17 16:06:10 +01:00
apikey.go Access Control: Add service accounts (#38994) 2021-10-20 14:36:11 +02:00
context_test.go Chore: replace macaron with web package (#40136) 2021-10-11 14:30:59 +02:00
context.go Application: Make error-template title configurable (#40310) 2021-10-13 08:35:01 +02:00
dashboard_acl_test.go Chore: Rewrite models dashboard acl test to standard library (#30022) 2021-01-01 13:22:48 +01:00
dashboard_acl.go Forbid creation of dashboard permissions with both a user and a team (#40104) 2021-10-13 12:16:58 -06:00
dashboard_snapshot.go Chore: Refactor securedata to remove global encryption calls from dashboard snapshots (#38714) 2021-09-01 13:05:15 +02:00
dashboard_version.go Chore: Fix staticcheck issues (#28860) 2020-11-05 13:07:06 +01:00
dashboards_test.go Chore: Rewrite models dashboards test to standard library (#30023) 2021-01-01 13:29:40 +01:00
dashboards.go Folder API: optionally force deleting Grafana 8 alerts when deleting a folder (or error) (#36427) 2021-07-22 12:27:13 +03:00
datasource.go AWS: add OpenSearch to AWS services (#40290) 2021-10-11 15:53:04 +01:00
folders.go Folder API: optionally force deleting Grafana 8 alerts when deleting a folder (or error) (#36427) 2021-07-22 12:27:13 +03:00
health.go feat: added api health endpoint that does not require auth and never creates sessions, returns db status as well. #3302 2017-04-25 17:17:45 +02:00
helpflags.go Chore: Remove unused Go code (#28852) 2020-11-17 11:51:31 +01:00
jwt.go Migrate to Wire for dependency injection (#32289) 2021-08-25 15:11:22 +02:00
libraryelements.go LibraryElements: Creates usage stats for panels and variables (#34476) 2021-05-24 06:11:01 +02:00
licensing.go AccessControl: frontend changes for adding FGAC to licensing (#39484) 2021-10-05 14:54:26 +01:00
live.go Live: using organisation IDs throughout stack (#33714) 2021-05-11 22:03:04 +03:00
login_attempt.go login: uses epochs for login throtting. 2018-02-16 17:25:46 +01:00
models.go Okta OAuth provider (team sync support) (#22972) 2020-04-02 17:35:48 +03:00
notifications.go Email: Allow configuration of content types for email notifications (#34530) 2021-07-19 13:31:51 +03:00
org_user.go 32540: Add org users with pagination (#33788) 2021-05-12 14:10:35 +02:00
org.go Chore: Fix staticcheck issues (#28860) 2020-11-05 13:07:06 +01:00
playlist.go Chore: Remove unused Go code (#28852) 2020-11-17 11:51:31 +01:00
plugin_settings.go Encryption: Refactor securejsondata.SecureJsonData to stop relying on global functions (#38865) 2021-10-07 17:33:50 +03:00
preferences.go Dashboard: Add week start option to global and dashboard preferences (#40010) 2021-10-18 10:27:14 -03:00
quotas.go Alerting: Remove ngalert feature toggle and introduce two new settings for enabling Grafana 8 alerts and disabling them for specific organisations (#38746) 2021-09-29 16:16:40 +02:00
search_user_filter.go Create search filters by interface (#39843) 2021-10-07 16:06:16 +02:00
shorturl.go Short URL: Cleanup unvisited/stale short URLs (#28867) 2020-11-09 18:08:16 +01:00
star.go Chore: Fix staticcheck issues (#28860) 2020-11-05 13:07:06 +01:00
stats.go add daily active counts to stats (#38842) 2021-09-13 10:29:35 -04:00
tags_test.go Chore: Rewrite models tags test to standard library (#30041) 2021-01-05 17:20:41 +01:00
tags.go Create annotations (#8197) 2017-10-07 10:31:39 +02:00
team_member.go UserTableView: Show user name in table view (#18108) 2019-11-21 12:44:46 +02:00
team.go Add an option to hide certain users in the UI (#28942) 2020-11-24 12:10:32 +01:00
temp_user.go Users: Expire old user invites (#27361) 2020-10-13 12:30:09 +02:00
user_auth.go Auth: creates a hook in the user mapping flow (#37190) 2021-07-29 10:18:42 +02:00
user_token.go Migrate to Wire for dependency injection (#32289) 2021-08-25 15:11:22 +02:00
user.go Access Control: Add service accounts (#38994) 2021-10-20 14:36:11 +02:00
validations.go Plugins: Requests validator (#30445) 2021-02-03 20:47:45 +01:00