Commit Graph

2571 Commits

Author SHA1 Message Date
Eric Lippmann 688a08585b Merge branch 'master' into bugfix/error-prone-generictts-9611
Conflicts:
	modules/monitoring/application/views/scripts/show/components/downtime.phtml
2015-08-03 15:05:45 +02:00
Johannes Meyer 9a0e47a3e1 SimpleQuery: Add method hasResult()
refs #9632
2015-08-03 14:49:33 +02:00
Johannes Meyer dbc2f98053 SimpleQuery: Initialize self::$iteratorPosition as late as possible
refs #9632
2015-08-03 14:09:55 +02:00
Eric Lippmann ea5db51213 Fix "Try to get an inexistent pane." when clicking on the "Search" tab 2015-08-03 13:01:11 +02:00
Eric Lippmann 139baffdc6 lib: Make Dashboard::$tabs protected
The SearchDashboard has to override Dashboard::getTabs() in order to set up the correct tab.
2015-08-03 13:01:11 +02:00
Eric Lippmann 177fafaa56 lib: Fix TicketHook's PHPDoc
refs #9611
2015-08-03 11:05:48 +02:00
Eric Lippmann 451be1e97f monitoring/hooks: Add TicketHook::createLinks()
Instead of calling preg_replace_callback w/o error handling in our view scripts, TicketHook::createLinks() will take care of that.

refs #9611
2015-07-31 15:31:41 +02:00
Johannes Meyer 99c69cc461 SimpleQuery: Add support for peek aheads
refs #9661
2015-07-31 13:51:39 +02:00
Johannes Meyer fe41d312ca RepositoryQuery: Do not bypass the query's own iterator
refs #9661
2015-07-31 13:12:41 +02:00
Johannes Meyer 16e54d3987 DbQuery: Be less error-prone while calling array_search 2015-07-31 11:05:23 +02:00
Johannes Meyer 6c105b867e Form: Be less error-prone while calling array_search 2015-07-31 11:05:09 +02:00
Johannes Meyer 5345831742 SessionNamespace: Be less error-prone while calling array_search 2015-07-31 11:04:51 +02:00
Johannes Meyer 449a19c3a3 Session: Be less error-prone while calling array_search 2015-07-31 11:04:43 +02:00
Johannes Meyer 24cb123f47 Tabs: Be less error-prone while calling array_search 2015-07-31 11:04:36 +02:00
Johannes Meyer 316a4d8b82 Merge branch 'master' into bugfix/allow-to-configure-how-to-manage-groups-9609 2015-07-30 16:16:04 +02:00
Eric Lippmann a234852f32 Merge branch 'feature/basic-auth-9660'
resolves #9660
2015-07-30 15:05:07 +02:00
Eric Lippmann feed927fd2 Let external auth win over session auth and session auth over http auth
refs #9660
2015-07-30 14:50:05 +02:00
Eric Lippmann 9060e8a034 lib: Only call Icinga::app()->getRequest() for getting the request outside of a controller
Saves a call to getFrontController().

refs #9660
2015-07-30 14:02:44 +02:00
Eric Lippmann 55ad2dd65f Don't fail if password contains a colon on basic auth
refs #9660
2015-07-30 13:59:47 +02:00
Eric Lippmann c594d6db33 Challenge client on invalid basic access auth credentials
refs #9660
2015-07-30 13:59:18 +02:00
Eric Lippmann 42d698a6b3 lib: Add Web::getResponse()
Use this method for retrieving the response object outside a controller.

refs #9660
2015-07-30 13:47:54 +02:00
Eric Lippmann 81aad9d6a6 Rename Notifiation::getMessages() to popMessages()
Because the call to popMessages()--before getMessages()--automatically resets the notification messages on the instance, popMessages() is a much better name for the method.

refs #9660
2015-07-30 13:45:39 +02:00
Eric Lippmann d545e1f7d1 lib: Don't write the empty notifications array into the session
I combined this w/ introducing some constants for notification types and PHPDoc.

refs #9660
2015-07-30 13:42:59 +02:00
Eric Lippmann 9aa1599a18 Form: Disable CSRF counter measure only on API requests
refs #9660
2015-07-30 12:04:22 +02:00
Eric Lippmann c23c7a5fa9 lib: Add Request::getIsApiRequest()
If the Accept header is set to application/json it's an API request.

refs #9660
2015-07-30 12:03:33 +02:00
Eric Lippmann 3aae37aff3 Don't redirect on external auth
refs #9660
2015-07-30 12:02:42 +02:00
Eric Lippmann db505281ee lib: Disable CSRF token on HTTP authenticated users and not XHR
refs #9660
2015-07-30 09:33:04 +02:00
Eric Lippmann 36ff2d8914 lib: Set User::$isHttpUser in Auth
refs #9660
2015-07-30 09:32:24 +02:00
Eric Lippmann 775f8cced6 lib: Introduce User::$isHttpUser
refs #9660
2015-07-30 09:31:58 +02:00
Eric Lippmann 9f0e48a0a1 Don't send the X-Icinga-Module header more than once
fixes #9349
2015-07-30 09:28:05 +02:00
Matthias Jentsch 20aa17c831 Merge branch 'bugfix/selected-row-lost-after-autorefresh-8623'
fixes #8623
2015-07-29 17:30:45 +02:00
Eric Lippmann cf8c680482 lib: Add basic access authentication (WIP)
refs #9660
2015-07-29 17:22:55 +02:00
Eric Lippmann ce2a196c4a lib/Web: Set up request before setting up the user
refs #9660
2015-07-29 17:22:10 +02:00
Matthias Jentsch 3e7cc299ec Fix issue that caused the refresh button to remove side bar
Do not apply base target globally for all toolbar elements, but specifically for those that should remove side-bars.

refs #8623
refs #6436
2015-07-29 17:18:52 +02:00
Thomas Gelf ba906d2fca FilterEditor: allow to set custom filter columns 2015-07-29 17:13:18 +02:00
Eric Lippmann db48a944e3 lib: Introduce Web::getRequest()
Basic auth will need the request before we set up the front controller.

refs #9660
2015-07-29 16:27:48 +02:00
Johannes Meyer fb7666e6bd LdapUserGroupBackend: Adjust usage of LdapCapabilities::hasAdOid()
Usage search ftw..
2015-07-29 16:26:39 +02:00
Eric Lippmann c3a057dbdb lib: Add AuthChain::setSkipExternalBackends() in favor of setIteratorMode()
There's only one mode.

refs #9660
2015-07-29 16:18:30 +02:00
Eric Lippmann 3ca85f9daa lib: Add Auth::getRequest()
Basic auth will require the request.

refs #9660
2015-07-29 15:56:45 +02:00
Eric Lippmann 96e3111f58 lib: Reorder functions in Auth
refs #9660
2015-07-29 15:52:56 +02:00
Eric Lippmann e7c7486097 lib: Fix PHPDoc in User
refs #9660
2015-07-29 15:46:53 +02:00
Eric Lippmann 37ef87b9ab lib: Fix PHPDoc in ExternalBackend
refs #9660
2015-07-29 15:46:40 +02:00
Eric Lippmann 1b5c5deace lib: Rename remote user to external user
We renamed our backend. Code now reflects this.

refs #9660
2015-07-29 15:44:32 +02:00
Eric Lippmann 432efcb089 lib: Handle Response::setRerenderLayout() correctly
The header is different if it's not a redirect.

refs #9660
2015-07-29 15:08:36 +02:00
Johannes Meyer 3f7081296b Merge branch 'master' into bugfix/allow-to-configure-how-to-manage-groups-9609 2015-07-29 15:02:20 +02:00
Eric Lippmann aaae7e03b4 lib: Introduce Response::setRerenderLayout()
Instead of handling response headers based on flags in our controllers, this should happen in the request for usage w/o controllers.

refs #9660
2015-07-29 14:39:45 +02:00
Eric Lippmann 91720810cc lib: Document Response::redirectAndExit()
refs #9660
2015-07-29 14:22:45 +02:00
Eric Lippmann a31c799043 lib: Introduce Response::getRequest()
refs #9660
2015-07-29 14:20:39 +02:00
Eric Lippmann ae4b7144cd lib: Implement Auth::getAuthChain()
Saves one use statement for auth chain usages.

refs #9660
2015-07-29 14:14:19 +02:00
Eric Lippmann 745e30259d lib: Implement AuthChain::authenticate()
Right now the LoginController has all the authentication which is kind of a mess. Further, the upcoming basic access authentication has to reuse this code.
Thus AuthChain::authenticate() is introduced to handle both cases.

refs #9660
2015-07-29 14:11:54 +02:00
Johannes Meyer 13edbf901d UserBackend: Implement interface ConfigAwareFactory
refs #9609
2015-07-29 13:44:26 +02:00
Johannes Meyer 83aafe8cda Allow to discover LDAP connections in the wizard as well
...
2015-07-29 09:26:53 +02:00
Eric Lippmann 4d44a0625c lib: Move UserBackendInterface::authenticate() to new interface Authenticatable
refs #9660
2015-07-29 09:25:14 +02:00
Eric Lippmann 2a4e614b5e Fix code style in AuthChain
refs #9660
2015-07-28 19:55:26 +02:00
Eric Lippmann 07849e0fea lib: Rename Authentication/Manager to Authentication/Auth
refs #9660
2015-07-28 17:08:55 +02:00
Eric Lippmann d2467fee16 Merge branch 'feature/secure-modules-9644'
resolves #9644
2015-07-28 14:00:27 +02:00
Eric Lippmann 47925d0fa0 lib: Make BaseTestCase abstract
Else phpunit tries to run the "test" though it shouldn't :)
2015-07-28 13:58:23 +02:00
Eric Lippmann fe73d6de83 Remove superfluous whitespaces in IcingaException
refs #9644
2015-07-28 13:46:32 +02:00
Eric Lippmann 7cfc78558d Merge branch 'master' into feature/secure-modules-9644
Conflicts:
	library/Icinga/Exception/IcingaException.php
2015-07-28 13:42:02 +02:00
Matthias Jentsch c8d065b3e0 Accept DbUserBackends with only one single user
fixes #9739
2015-07-28 12:41:08 +02:00
Johannes Meyer e231ef8061 SortBox: Fix some documenation and code style issues 2015-07-28 12:04:16 +02:00
Johannes Meyer f7b35b04f4 SortBox: Properly apply sort rules and show the user the default
refs #6644
2015-07-28 12:03:50 +02:00
Johannes Meyer d0dd4b09a0 Repository: It's "sort rules" in general, not "default sort rules" 2015-07-28 11:42:13 +02:00
Johannes Meyer 05af310e4c RepositoryQuery: Implement interface SortRules
refs #6644
2015-07-28 11:41:07 +02:00
Johannes Meyer cdc2182430 Introduce interface SortRules
refs #6644
2015-07-28 11:40:27 +02:00
Eric Lippmann b84650dd4b Document variadic function IcingaException::__construct properly
refs #9644
2015-07-28 10:45:00 +02:00
Eric Lippmann a68c05da7f lib: Require a message when throwing IcingaExceptions
refs #9644
2015-07-28 10:43:17 +02:00
Eric Lippmann 78285b95a3 Make Controller::httpNotFound() variadic
refs #9644
2015-07-28 10:40:02 +02:00
Eric Lippmann 2c8235d486 lib: Introduce IcingaException::create()
refs #9644
2015-07-27 16:25:41 +02:00
Johannes Meyer 9cc7b45458 Merge branch 'master' into bugfix/separate-sort-controls-9421 2015-07-27 11:50:05 +02:00
Johannes Meyer 4d9aa54814 SortBox: Utilize a separate form for each control
refs #9421
2015-07-27 11:43:47 +02:00
Matthias Jentsch a14da1c558 Make sure to log inspection messages into message log too
refs #9641
2015-07-27 09:44:07 +02:00
Johannes Meyer 86ad6c48ff Form: Automatically remove query parameters only for GET forms
refs #9421
2015-07-27 08:52:33 +02:00
Johannes Meyer 982e226db0 IcingaException: Add utility method to format exceptions as one-liner 2015-07-24 16:19:20 +02:00
Johannes Meyer c1a3d205bc Show more details about unhandled exceptions in the CLI
fixes #9646
2015-07-24 15:58:32 +02:00
Eric Lippmann 8358e9165c Don't require the module permission for the default module
refs #9644
2015-07-24 15:11:21 +02:00
Eric Lippmann 149a974a44 Fix coding style in Module.php
refs #9644
2015-07-24 15:06:25 +02:00
Eric Lippmann 519d025de5 Allow to get permissions and restrictions from unloaded modules
refs #9644
2015-07-24 14:24:48 +02:00
Eric Lippmann 444fdadf13 Allow to get unloaded modules via Manager::getModule()
refs #9644
2015-07-24 14:23:48 +02:00
Eric Lippmann ec1ddd82b3 Move Module::__construct to the top of the function list
refs #9664
2015-07-24 14:19:17 +02:00
Johannes Meyer 56759e7f21 Merge branch 'master' into feature/ldap-auth-backend-discovery-9602 2015-07-24 10:52:14 +02:00
Eric Lippmann 12856da971 Merge branch 'bugfix/filter-custom-variables-9692'
fixes #9692
2015-07-24 09:27:05 +02:00
Johannes Meyer f06be5c9bc LdapConnection: Let self::bind() return $this 2015-07-23 17:34:09 +02:00
Thomas Gelf 727a2d7141 Paginator: relax requirements to Paginatable
* we need no full query interface here
* introduced new interface "Paginatable"

fixes #9483
2015-07-23 13:48:49 +02:00
Eric Lippmann a34ad0227f Don't load module menu entries if the authenticated user lacks the module permission
refs #9644
2015-07-23 12:59:30 +02:00
Eric Lippmann fd77c30838 Don't load module dashboards if the authenticated user lacks the module permission
refs #9644
2015-07-23 12:57:23 +02:00
Eric Lippmann e8e01257e6 Change interface of SearchDashboard to allow setting a user before calling ::search()
Because search dashlets are provided by modules, the authenticated user's module permissions have to be validated before loading search dashlets provided by modules.

refs #9644
2015-07-23 12:53:08 +02:00
Eric Lippmann b4f4ce4406 Require the module's permission for every module automatically
Module permissions are not required if authentication is disabled on the controller.

refs #9644
2015-07-23 12:51:10 +02:00
Eric Lippmann b000ae3a37 Do not require permissions if authentication is not required
refs #9644
2015-07-23 12:50:02 +02:00
Eric Lippmann 5dcc307e87 Add namespace for module permissions to the module manager
refs #9644
2015-07-22 14:59:35 +02:00
Eric Lippmann aa567f8cd7 Introduce ModuleActionController::$requiresModulePermission
refs #9644
2015-07-22 14:56:02 +02:00
Eric Lippmann 13d954a956 Fix rawurlencode call 2015-07-22 13:36:25 +02:00
Eric Lippmann 52e352751e Revert "ModuleActionController: fix forward/X-Icinga-Module"
This reverts commit bf82bd4ce1.

We have a not merged branch for this.

refs #9349
2015-07-22 13:34:44 +02:00
Markus Frosch ab8e775188 Fix duplicate headers on forward() inside a controller
This avoids that the JS loader flattening arrays.

refs #9349
2015-07-22 13:34:44 +02:00
Johannes Meyer 54a77b7253 Merge branch 'master' into feature/support-for-file-uploads-8758 2015-07-22 13:30:56 +02:00
Johannes Meyer a199d36207 Stylesheet: Disable extendend @import statements provided by LESS
fixes #9687
2015-07-22 12:45:10 +02:00
Eric Lippmann 15cb24c6dc Throw an exception in IdoQuery::getCustomvarColumnName() in case the custom variable has not been joined
Queries extending IdoQuery and using the method getCustomvarColumnName() must be notified in case the custom variable has not been joined.

refs #9692
2015-07-22 12:03:34 +02:00
Thomas Gelf bf82bd4ce1 ModuleActionController: fix forward/X-Icinga-Module 2015-07-22 10:53:42 +02:00
Johannes Meyer cecd94be50 Merge branch 'master' into feature/support-for-file-uploads-8758 2015-07-22 08:47:24 +02:00
Johannes Meyer c0de2e6ee3 Form: Add missing use statement for the ProgrammingError exception 2015-07-22 08:39:24 +02:00