Commit Graph

1170 Commits

Author SHA1 Message Date
Marcus Efraimsson 13d5db7d19 dashboards: add support for retrieving a dashboard by uid
Introduces new url in api /dashboards/<uid> for fetching dashboard by unique id
Leave the old dashboard by slug url /dashboards/db/<slug> for backward
compatibility and for supporting fallback
WIP for #7883
2018-01-30 23:18:34 +01:00
Marcus Efraimsson c1cff3849e dashboard: change unique index for uid to include org_id
Make the max length of uid longer in case we want to change it later
#7883
2018-01-30 23:18:34 +01:00
Marcus Efraimsson fc7bab8bf0 dashboard: fix failing test. #7883 2018-01-30 23:18:34 +01:00
Marcus Efraimsson 5b35c694dc dashboard: generate and include uid in dashboard model. #7883 2018-01-30 23:18:34 +01:00
Marcus Efraimsson 025a14ec24 db: add migrations for creating a unique index for uid. #7883 2018-01-30 23:18:34 +01:00
Marcus Efraimsson 50aa9ec69c db: add migrations for generating uid for existing dashboards. #7883 2018-01-30 23:18:34 +01:00
Marcus Efraimsson 401b01e1e6 db: add new column uid to the dashboard table. #7883 2018-01-30 23:18:34 +01:00
Marcus Efraimsson 3d1c624c12 WIP: Protect against brute force (frequent) login attempts (#10031)
* db: add login attempt migrations

* db: add possibility to create login attempts

* db: add possibility to retrieve login attempt count per username

* auth: validation and update of login attempts for invalid credentials

If login attempt count for user authenticating is 5 or more the last 5 minutes
we temporarily block the user access to login

* db: add possibility to delete expired login attempts

* cleanup: Delete login attempts older than 10 minutes

The cleanup job are running continuously and triggering each 10 minute

* fix typo: rename consequent to consequent

* auth: enable login attempt validation for ldap logins

* auth: disable login attempts validation by configuration

Setting is named DisableLoginAttemptsValidation and is false by default
Config disable_login_attempts_validation is placed under security section
#7616

* auth: don't run cleanup of login attempts if feature is disabled

#7616

* auth: rename settings.go to ldap_settings.go

* auth: refactor AuthenticateUser

Extract grafana login, ldap login and login attemp validation together
with their tests to separate files.
Enables testing of many more aspects when authenticating a user.
#7616

* auth: rename login attempt validation to brute force login protection

Setting DisableLoginAttemptsValidation => DisableBruteForceLoginProtection
Configuration disable_login_attempts_validation => disable_brute_force_login_protection
#7616
2018-01-26 10:41:41 +01:00
Leonard Gram 1c034b7a73 fixes minor typo 2018-01-25 09:30:37 +01:00
bergquist c3a768b3ed provsioning: dont stop grafana due to missing 2018-01-25 09:30:37 +01:00
Marcus Efraimsson d36fd66dba dashfolder: fix for sqlite test 2018-01-24 11:43:08 +01:00
Daniel Lee 9d2a667e8b dashfolder: fix for mysql test 2018-01-24 11:19:26 +01:00
bergquist ee973a977b stats: send amount of stars as stats 2018-01-23 22:51:05 +01:00
bergquist ea988a37dd tech: avoid using deprecated functions 2018-01-23 22:30:45 +01:00
bergquist 5a1cf2c793 style: minor code style changes 2018-01-23 22:28:47 +01:00
bkaganyildiz 97d969bd5c Update OpsGenie Notifier to support different api domains. 2018-01-22 22:27:35 +03:00
Matt 0dffb6dbb1 Adjusted the border color on the buttons in dashboard nav, fixed alert email text area width, fixed padding-top issue on dashboard settings aside 2018-01-18 14:40:08 +01:00
Carl Bergquist d6667c4fa0 Merge pull request #10548 from StevenTobin/follow_symlinks
Make file_reader follow symlinks
2018-01-18 11:29:34 +01:00
stobin f1813ae3a3 Make file_reader follow symlinks 2018-01-17 14:51:17 +00:00
bergquist 34d7f8a44f dashboards as cfg: property path replaces folder 2018-01-17 15:48:24 +01:00
Leonard Gram 183507964c Clearer naming for dashboard provisioning config.
Renames folder (in options) to path to make it
different from the grafana folder wherein the
dashboard will be created.
2018-01-16 17:40:14 +01:00
bergquist 1a6c2ea8d8 dashboards as cfg: logs error when trying to import dashboard with id
dashboard json cannot contain fixed id when importing from
disk. We used to override this but it didnt caught all problems
so now we block dashboards from beeing imported instead.

closes #10504
2018-01-15 12:26:43 +01:00
Robin Burchell 43109dc8ca telegram: Send notifications with an inline image
If image upload is enabled, but there is no public image repository,
fall back to sending an image via telegram's API.
2018-01-11 17:23:50 -05:00
Robin Burchell b6fcf2b609 telegram: Switch to using multipart form rather than JSON as a body
This is a pre-requisite for uploading inline images.
2018-01-11 17:21:43 -05:00
Robin Burchell a1a9f339bf telegram: Fix a typo in variable name 2018-01-11 17:21:43 -05:00
Torkel Ödegaard c42a232644 Merge branch 'react-mobx' 2018-01-04 09:12:57 +01:00
Torkel Ödegaard 029317ed18 tech: alert list react migration progress 2017-12-31 14:16:19 +01:00
bergquist f5e00e133b dashboards as cfg: moves dashcash into its own file 2017-12-28 13:37:02 +01:00
bergquist 237d469ed4 dashboards as cfg: create dashboard folders if missing
closes #10259
2017-12-28 13:33:11 +01:00
bergquist f4078e1935 tests: for skipping with hidden folders 2017-12-27 15:04:49 +01:00
Torkel Ödegaard 3e7420320c Merge branch 'master' into react-mobx 2017-12-26 13:53:39 +01:00
bergquist 7917efb31a pagerduty: fixes invalid default value
autoResolve incident checkbox was set to disabled by default but
the backend used enabled as default. This commit makes both use
disabled by defualt

fixes #10222
2017-12-22 10:54:48 +01:00
bergquist e480a38dc1 pagerduty: adds test for reading auto resolve setting 2017-12-22 09:58:37 +01:00
Torkel Ödegaard 4181602b78 react: progress on react containers and mobx-state-tree store 2017-12-21 11:56:45 +01:00
Marcus Efraimsson af34f9977e Add avatar to team and team members page (#10305)
* teams: add db migration for email column in teams table

* teams: /teams should render index page with a 200 OK

* teams: additional backend functionality for team and team members

Possibility to save/update email for teams.
Possibility to retrive avatar url when searching for teams.
Possibility to retrive avatar url when searching for team members.

* teams: display team avatar and team member avatars

Possibility to save and update email for a team

* teams: create team on separate page instead of modal dialog
2017-12-20 21:20:12 +01:00
Marcus Efraimsson df3655dd4a db: fix postgres regression when comparing boolean columns/values (#10303)
Use the dialect specific BooleanStr when comparing boolean columns/values.
Fixes #10300
2017-12-20 12:15:49 +01:00
Carl Bergquist e2be6a38c4 pushover: update default message 2017-12-19 14:31:26 +01:00
Carl Bergquist f36aa2e953 Merge branch 'patch-1' of https://github.com/devkid/grafana into devkid-patch-1
* 'patch-1' of https://github.com/devkid/grafana:
  Add default message for Pushover notifications
2017-12-19 14:30:09 +01:00
Carl Bergquist 644c2f7fb0 test: remove unused code 2017-12-19 11:23:21 +01:00
Carl Bergquist 66cf224e31 alerting: make alert extractor backwards compatible
closes #10270
2017-12-19 11:20:05 +01:00
Carl Bergquist 1816e89730 alerting: move test json into files 2017-12-19 10:22:26 +01:00
Torkel Ödegaard 51ec64f872 fix: reduced team name column length, fixes #10244 2017-12-18 13:38:29 +01:00
Torkel Ödegaard a8a5f8181b fix: viewers can edit now works correctly 2017-12-15 14:19:49 +01:00
Torkel Ödegaard c395237710 Merge branch Grafana v5 'develop' branch 2017-12-15 12:06:09 +01:00
Torkel Ödegaard 8905c8e5fb Merge branch 'team_member_count' of https://github.com/bergquist/grafana into develop 2017-12-15 11:53:47 +01:00
Daniel Lee 2b814738c1 dashfolder: change to migration text
First index for the dashboard_acl table had the word
unique in the migration description even though the
index is not unique
2017-12-15 11:35:14 +01:00
bergquist 256f7176a2 teams: add team count when searching for team
closes #10207
2017-12-15 11:08:06 +01:00
Simon Aquino 5dbbf1826c Avoid ID validation before provisioning dashboards
Attempting to provision grafana using a previously exported
JSON dashboard with the ID field already set, might result in an error.
In fact, Grafana might believe that a dashboard with that
given ID already exists in the database, throwing an error if it doesn't.
(see pkg/services/sqlstore/dashboard.go#L32)

The dashboard provisioner should set the dashboard id to zero in order to
avoid this behaviour inducing the dashboard to be written to the DB
without ID validation.
2017-12-14 02:07:50 +01:00
Torkel Ödegaard a7645b710d Merge remote-tracking branch 'origin/master' into develop 2017-12-13 19:18:10 +01:00
bergquist ade734168c alertmanager: endAt should only be used if we have the correct value 2017-12-13 19:17:00 +01:00