Commit Graph

5187 Commits

Author SHA1 Message Date
Eric Lippmann 9dd179d8f3 rpm: Fix shadow-utils requirement on SUSE 2015-01-30 13:19:26 +01:00
Johannes Meyer e8619686ae Add the sockets module as optional requirement of the monitoring module 2015-01-30 13:01:51 +01:00
Eric Lippmann 932496c58c rpm: Require json and posix PHP extensions for SUSE packages 2015-01-30 12:51:06 +01:00
Eric Lippmann c8640cbae9 rpm: Remove php5-imagick dependency for SUSE packages 2015-01-30 12:44:34 +01:00
Eric Lippmann e5b0b52874 lib: Reduce else { if { to elseif { in User::can() 2015-01-30 11:20:05 +01:00
Eric Lippmann 127ce7abfe monitoring/security: Fix that toggling instance features is always disabled
In HTML5 the presence of a boolean attribute on an element represents the true value,
and the absence of the attribute represents the false value.

In Zend we have to set null for the absence of the attribute and the empty string for the
presence of the attribute.
2015-01-30 10:47:02 +01:00
Eric Lippmann 1681f746c1 monitoring/security: Disable toggling object features if user lacks the permission monitoring/command/feature/object 2015-01-30 10:46:24 +01:00
Eric Lippmann bdc637ff67 monitoring/security: Guard toggling object features
Toggling object features will only be possible if the user has the permission monitoring/command/feature/object.
2015-01-30 10:31:49 +01:00
Eric Lippmann 35b33647cf monitoring/security: Guard the link for disabling notifications on an instance-wide basis
The link in the monitoring health view will only be shown if the user has the permission monitoring/command/feature/instance.
2015-01-30 10:26:43 +01:00
Eric Lippmann 3716be4a48 monitoring/security: Disable toggling instance features if user lacks the permission monitoring/command/feature/instance 2015-01-30 10:01:03 +01:00
Eric Lippmann 26613a0106 monitoring/security: Rename permission monitoring/command/feature/program to monitoring/command/feature/instance 2015-01-30 09:58:30 +01:00
Eric Lippmann 7dbb8c6841 monitoring/security: Require monitoring/command/feature/instance permission for toggling instance features 2015-01-30 09:58:10 +01:00
Eric Lippmann d19e36d937 monitoring/security: Require monitoring/command/feature/instance permission for disabling notifications 2015-01-30 09:57:31 +01:00
Johannes Meyer 0108d44d63 Fix "The use of non compound name 'Exception'..." 2015-01-30 09:38:59 +01:00
Eric Lippmann df29dd0e7c Implement Form::hasPermission() and Form::getPermission() 2015-01-30 09:35:01 +01:00
Eric Lippmann 2faf5f0ca1 Throw SecurityException in ActionController::assertPermission() 2015-01-30 09:34:19 +01:00
Johannes Meyer 63305fdf9a Add Icinga\Application\Config::saveIni()
Simplifies saving INI files. Icinga\File\Ini\IniWriter does already require an
instance of Icinga\Application\Config so it's obvious to give "Config" the
task to initialize the writer.. We do also have a central place to handle
creating missing ancestor directories now.

refs #8219
2015-01-30 09:32:08 +01:00
Eric Lippmann d42017018f Return HTTP 403 in case a SecurityException was thrown 2015-01-30 09:31:05 +01:00
Eric Lippmann 375345f837 lib: Add SecurityException
All assertPermission() calls must throw this exception.
2015-01-30 09:06:10 +01:00
Johannes Meyer 3e128732b8 Apply a limit to results fetched via Ldap\Connection::fetchRow()
fixes #7993
2015-01-29 17:29:11 +01:00
Johannes Meyer 6e533f223e Log warnings emitted by ldap_control_paged_result_response() as debug
Such a warning is emitted as well in case it's not critical. That is passing
an alternative overall result limit using ldap_search() to the server causes
it being applied across pages so ldap_control_paged_result_response()
does not indicate the "end" of the resultset just by adjusting the cookie
but by emitting the warning as well.
2015-01-29 17:12:59 +01:00
Johannes Meyer 9ff0bbcfc0 Fix that Icinga\Protocol\Ldap\Connection does not correctly apply limits 2015-01-29 17:07:58 +01:00
Johannes Meyer 97cc37b99c Move php version check from ...\Ldap\Query to ...\Ldap\Connection
refs #8261
refs #6176
2015-01-29 15:59:03 +01:00
Johannes Meyer 2a115e71d4 Add support for paged LDAP search results
fixes #8261
refs #6176
2015-01-29 15:53:15 +01:00
Johannes Meyer 7e792f5d2e Add explicit step-attribute to html5-datetime* input elements
fixes #8314
2015-01-29 15:41:21 +01:00
Marius Hein dd483d98df LessCompiler: Remove useless argument
refs #6417
2015-01-29 14:04:47 +01:00
Marius Hein c1df1f822e ifont: Reorganize files and drop use less attributes
fixes #6417
2015-01-29 11:25:37 +01:00
Johannes Meyer ab95ae622c Merge branch 'feature/improve-autologin-setup-8274'
refs #8274
resolves #8134
fixes #7848
2015-01-28 18:04:55 +01:00
Johannes Meyer 3a983e8859 Merge branch 'master' into feature/improve-autologin-setup-8274 2015-01-28 18:01:15 +01:00
Johannes Meyer 400fbccbb8 Add setup route to the installation documentation
refs #7848
2015-01-28 17:59:43 +01:00
Johannes Meyer 8383320f31 Update documentation covering external authentication
refs #8274
2015-01-28 17:52:17 +01:00
Marius Hein c382e0d205 Merge branch 'bugfix/ie8-fixes-6417'
fixes #6417
2015-01-28 17:10:52 +01:00
Marius Hein 4abb30e55b Merge branch 'master' into bugfix/ie8-fixes-6417 2015-01-28 17:08:56 +01:00
Marius Hein 9d05190517 ifont: Fix empty font glyphs for IE8
The embedded font is included inline in the stylesheets. IE falls back and
tries to load one of the other font sources which was not exported by the web
server. This fix moves the fontello directory to public and add add a
prefix path to the embedded stylesheet.

refs #6417
2015-01-28 17:06:55 +01:00
Johannes Meyer 78f5bf4f3d Phrase external auth warnings more neutral
refs #8274
2015-01-28 16:22:20 +01:00
Johannes Meyer f486dabe6d Drop view script config/logging.phtml as it's not used anywhere 2015-01-28 14:22:42 +01:00
Johannes Meyer 352faa8b68 Merge branch 'bugfix/close-forms-when-switching-between-config-tabs-6436'
fixes #6436
2015-01-28 14:21:46 +01:00
Johannes Meyer 618ab4f4b9 Introduce link target "_right" to keep a column with tabs rightmost
I'd have liked to get it to work that in case the tab control is not in the
rightmost column a "go back" in the history is being simulated causing
the preceding leftmost column(s) to be restored and the rightmost one
set to the one containing the tab control. But the history api does not
seem to support any read operations except for the current state..

refs #6436
2015-01-28 14:21:06 +01:00
Johannes Meyer cf857c4257 Close forms when switching between the main app's configuration tabs
refs #6436
2015-01-28 14:15:16 +01:00
Marius Hein 7ef86ddf49 Navigation: Bypass error-prone hover selector for IE8
refs #6417
2015-01-28 13:19:49 +01:00
Johannes Meyer 9f9f6274de Merge branch 'feature/context-sensitive-command-forms-8279'
resolves #8279
2015-01-28 13:03:37 +01:00
Johannes Meyer c19ff289bf Open command forms in the same column where their link is located
refs #8279
2015-01-28 13:02:37 +01:00
Johannes Meyer 6fde4eec30 Show all tabs except "Add to Dashboard" when issuing a command
refs #8279
2015-01-28 12:50:29 +01:00
Eric Lippmann 49b82af704 monitoring/security: Apply services/filter restriction in the service detail view 2015-01-27 14:57:54 +01:00
Eric Lippmann 49d4d74dbb monitoring/security: Apply hosts/filter restriction in the host detail view 2015-01-27 14:57:22 +01:00
Eric Lippmann 7bf6bd39e9 monitoring: Implement Filterable in MonitoredObject 2015-01-27 14:54:21 +01:00
Eric Lippmann e086905384 monitoring: Deprecate DataView::addFilter() and DataView::setFilter()
The from now on deprecated interface Filterable has proven that it sucks in the DataView.
Because of requiring us to implement trillion stupid methods, only DataView::applyFilter()
does not forget to handle column validation. Thus only DataView::applyFilter() must be used in order
to apply filters.
For setFilter() a wrapping Filter::matchAny() for the IdoQuery (or the DbQuery or the SimpleQuery I didn't have a look)
is required for the filter to work properly.
The deprecation is just for the records. I guess we do not use the other methods.
2015-01-27 14:52:13 +01:00
Eric Lippmann c53b1d27e9 lib: Deprecate Data\Filterable because of ...
addFilter and applyFilter do the same in all usages.
addFilter could be replaced w/ getFilter()->add().
We must no require classes implementing this interface to implement redundant methods over and over again.
The interface must be moved to the namespace Icinga\Data\Filter.
It lacks documentation.
2015-01-27 14:33:46 +01:00
Johannes Meyer 7ad44b8411 login: Show a note if the only active external auth backend is not available
refs #8274
2015-01-27 14:26:06 +01:00
Eric Lippmann b2f93abb12 monitoring/security: Require a Filterable instead of a DataView in applyRestriction() 2015-01-27 14:24:56 +01:00