Commit Graph

3669 Commits

Author SHA1 Message Date
Davide Bizzarri 8b5fe61996 Add AuthenticationHook
Created AuthenticationHook class with two main methods: onLogin and
onLogout that are called after login and before logout.
2018-03-28 16:18:31 +02:00
Markus Frosch 123a0b8196 Platform: Correct detecting MSSQL Support
PDO Implementation of zf1 builds on module mssql OR pdo_dblib, while dblib is preferred.

Newer implementations would support pdo_sqlsrv, but that is not available with ZF1.
2018-03-27 11:35:26 +02:00
Eric Lippmann 4a000d0098 Revert "Merge branch 'bugfix/domain-aware-auth-non-domain-ldap-group-backend-3250'"
This reverts commit 5cb7deda20, reversing
changes made to 02391e648b.

The change must be reverted because it makes it impossible to load groups
if domain aware auth is not enabled and the authenticated user specifies a domain.

refs #3324
2018-03-19 13:10:47 +01:00
Alexander A. Klimov 4477f33b31 Fix interference between two similar namespaces 2018-03-01 14:01:57 +01:00
lippserd f3404c24e5
Merge pull request #3340 from Icinga/bugfix/php-fatal-errors-2216
Unify the look of fatal and non-fatal errors
2018-02-21 09:26:21 +01:00
lippserd 133da1ef91
Merge pull request #3342 from Icinga/bugfix/pdf-export-broken-3338
Pdf: correct DOMPDF directory
2018-02-21 09:25:06 +01:00
Alexander A. Klimov 2355224b05 IcingaException::getConfidentialTraceAsString(): respect functions which don't take args "by definition" 2018-02-13 12:46:06 +01:00
Alexander A. Klimov 8e9d385a18 Unify the look of fatal and non-fatal errors
refs #2216
2018-02-07 10:45:20 +01:00
Alexander A. Klimov cf4af5180a Pdf: correct DOMPDF directory
refs #3338
2018-02-05 17:56:42 +01:00
Alexander A. Klimov 276d4f7e67 IcingaException::getConfidentialTraceAsString(): don't fail on internal functions
refs #3318
2018-01-25 14:20:41 +01:00
Alexander A. Klimov dadd2c80f6 Don't call session_start() after ini_set()
refs #3185
2018-01-24 17:38:20 +01:00
Alexander A. Klimov 72ec132f25 Correct interfaces to conform to PHP 7.2+ 2018-01-24 11:50:10 +01:00
Alexander A. Klimov cf9307fcc4 Donut: conform to PHP 5.3 2018-01-24 11:07:37 +01:00
Alexander A. Klimov 7f5962dfae FilterQueryString: fix typo 2018-01-24 10:31:57 +01:00
Alexander A. Klimov 7ae6e537d1 TemporaryLocalFileStorage::__destruct(): handle symlinks as expected 2018-01-24 10:28:58 +01:00
Eric Lippmann 56d28a6c14 Prepare release version 2.5.1 2018-01-22 13:47:41 +01:00
Alexander A. Klimov ff6fbdf5f2 Censor arguments in stack traces
refs #2810
2018-01-22 10:28:47 +01:00
Alexander A. Klimov 7106de5aa2 DbUserGroupBackend: implement Inspectable
refs #3233
2018-01-19 16:31:24 +01:00
Alexander A. Klimov 7227e10824 LdapUserGroupBackend: implement Inspectable
refs #3233
2018-01-19 16:31:24 +01:00
Johannes Meyer e59fa13786 Announcements: Render HTML in announcment messages
refs #2641
2018-01-19 16:12:53 +01:00
Johannes Meyer 3b9d8697ed Introduce class Icinga\Web\Helper\HtmlPurifier
refs #2641
2018-01-19 16:12:53 +01:00
lippserd d25e7b84eb
Merge pull request #3291 from Icinga/bugfix/ini-parser-hides-file-location-3252
IniParser: include the file location in parsing exceptions
2018-01-19 13:22:28 +01:00
Alexander A. Klimov 5616e9d508 IniParser: include the file location in parsing exceptions
refs #3252
2018-01-19 09:47:15 +01:00
lippserd 00eeab5883
Merge pull request #3283 from Icinga/bugfix/icinga-repository-retrievegeneralizedtime-rfc4517-2816
Icinga\Repository::retrieveGeneralizedTime(): comply w/ RFC4517
2018-01-18 16:15:21 +01:00
Alexander A. Klimov 5ce491d57a Icinga\Repository::retrieveGeneralizedTime(): outsource logic
refs #2816
2018-01-18 15:25:21 +01:00
lippserd 226cc2c810
Merge pull request #3274 from Icinga/bugfix/inner-donut-labels-firefox-3226
Donut: place HTML tags outside <svg>
2018-01-18 10:15:49 +01:00
lippserd 362a5b1721
Merge pull request #3271 from Icinga/bugfix/fix-internalurlvalidator
InternalUrlValidator: prevent circumvention by URLs on the same VHost
2018-01-18 09:58:32 +01:00
Alexander A. Klimov fbffc42b96 Icinga\Repository::retrieveGeneralizedTime(): comply w/ RFC4517
refs #2816
2018-01-17 18:14:18 +01:00
Alexander A. Klimov 0ad153a223 Tactical overview: always show the problems amount
refs #3226
2018-01-17 15:01:02 +01:00
lippserd 0abff5f643
Merge pull request #3268 from Icinga/bugfix/bad-url-makes-dashboard-unusable-2804
Don't fail to render the whole dashboard in case of a broken dashlet
2018-01-17 14:20:40 +01:00
Alexander A. Klimov 5f441f3ad1 Don't fail to render the whole dashboard in case of a broken dashlet 2018-01-17 13:48:14 +01:00
lippserd c18038f166
Merge pull request #3261 from Icinga/bugfix/icingacli-no-setup-module-2705
Make icingacli working without the setup module
2018-01-17 11:58:50 +01:00
lippserd ddfafb27f6
Merge pull request #3256 from Icinga/bugfix/multi-domain-support-broken-3232
Make multi-domain authn working w/ upper-case domains in user names
2018-01-17 11:57:48 +01:00
Alexander A. Klimov 4f706d9423 Donut: place HTML tags outside <svg>
refs #3226
2018-01-16 17:58:35 +01:00
Alexander A. Klimov c2f74d49cb InternalUrlValidator: prevent circumvention by URLs on the same VHost 2018-01-16 15:40:08 +01:00
Johannes Meyer 9ea916c5c6 Repository: Fix that legacy sort rules are ignored
refs #2765
2018-01-16 12:59:42 +01:00
Johannes Meyer ce4ae47805 LdapConnection: Respect a query's offset not only for ordered results
refs #2765
2018-01-16 12:59:42 +01:00
Johannes Meyer 37f22518bb LdapConnection: Respect query limits also for paged queries
refs #2765
2018-01-16 12:59:42 +01:00
Alexander A. Klimov 2282e1aa4f LdapConnection: respect a query's limit as expected
refs #2765
2018-01-16 12:59:42 +01:00
Alexander A. Klimov 8cbd506459 Make icingacli working without the setup module
This enables users to install only the icingacli package

refs #2705
2018-01-16 12:21:42 +01:00
lippserd 705f3a49d9
Merge pull request #3180 from Icinga/feature/url-static-self
Url: prefer static over self
2018-01-16 10:52:25 +01:00
Alexander A. Klimov 8c7ccce4a7 Make multi-domain authn working w/ upper-case domains in user names
refs #3232
2018-01-16 10:36:22 +01:00
lippserd c1497cf1c5
Merge pull request #3143 from Icinga/bugfix/inactive-module-config-tabs-2977
Hide inactive modules' config tabs
2018-01-16 09:18:49 +01:00
Alexander A. Klimov 5cb7deda20 Merge branch 'bugfix/domain-aware-auth-non-domain-ldap-group-backend-3250'
fixes #3250
fixes #3251
2018-01-15 11:20:45 +01:00
Paolo Schiro c806099e1b Avoid including domain users in a group not belonging to a domain
Signed-off-by: Alexander A. Klimov <alexander.klimov@icinga.com>

refs #3250
2018-01-15 11:19:35 +01:00
Alexander A. Klimov a1709a0670 Fix unneccessary log message
refs #3189
2017-12-19 15:58:25 +01:00
Alexander A. Klimov a5e75554ad Don't require module.less
refs #3149
2017-12-15 11:58:54 +01:00
Alexander A. Klimov 02decd957a php-svg-lib: fix missing files 2017-12-15 11:31:40 +01:00
lippserd 89da30f05f
Merge pull request #3209 from Icinga/bugfix/warnings-for-php-7-1-3208
PhpSession: conform to PHP 7.1
2017-12-15 09:22:22 +01:00
Alexander A. Klimov 7e2761b277 php-svg-lib: fix interface compatibility 2017-12-14 15:12:35 +01:00
Alexander A. Klimov 4ce4ad1074 Upgrade php-svg-lib to v0.3 2017-12-14 15:12:35 +01:00
Alexander A. Klimov 788272fad7 PhpSession: conform to PHP 7.1
refs #3208
2017-12-13 13:38:51 +01:00
Alexander A. Klimov 9acc8ee7a9 Upgrade dompdf to v0.8.2
refs #3202
2017-12-13 11:19:45 +01:00
Alexander A. Klimov 810c02a41f Url: prefer static over self 2017-12-04 10:48:52 +01:00
Eric Lippmann e376b137c7 Prepare release version 2.5.0 2017-11-27 16:18:13 +01:00
lippserd 8f1f8d4471
Merge pull request #3100 from Icinga/feature/expandable-content
Implement persistent "Show more" spoilers
2017-11-27 14:44:15 +01:00
lippserd 0bcbdfe679
Merge pull request #3063 from ss23/migrate_to_bcrypt
Improve Password hashing and validation for DbUserBackend
2017-11-27 14:26:35 +01:00
Alexander A. Klimov 6409bdc074 Implement persistent "Show more" spoilers 2017-11-27 14:18:42 +01:00
Eric Lippmann fb124b37cf Fix float format of donut chart attributes 2017-11-27 13:33:58 +01:00
lippserd 5aa83ea0d9
Merge pull request #3114 from Icinga/feature/support-phar-3113
Modules, Bootstrap: play nice with PHARs
2017-11-27 09:15:34 +01:00
Alexander A. Klimov 6cdad7c5c1 Hide inactive modules' config tabs
refs #2977
2017-11-24 13:40:03 +01:00
Jennifer Mourek d34ea588b1 Tactical overview: Add donut graphs 2017-11-21 23:38:04 +01:00
Eric Lippmann 8ffa110901 Web: Add icons and descriptions for second level menu items 2017-11-21 22:55:45 +01:00
Eric Lippmann b6b87796ed Menu: Link to the navigation dashboard if menu entry has children but no URL 2017-11-21 22:55:45 +01:00
Eric Lippmann e7ca817e81 Make Navigation::findItem() public
We need this method public for the navigation dashbaord.
2017-11-21 22:55:45 +01:00
Eric Lippmann 21dbe4ec47 Only render icons of root navigation items
The upcoming navigation dashboard creates its links from the menu items in configuration.php.
Now, we encourage users to specify icons for second-level menu items but do not want render them in our menu.
2017-11-21 22:55:45 +01:00
Eric Lippmann 3660606ca1 Allow to set a description for navigation items
We will introduce a navigation dashboard for root menu items which do not a have a URL but children.
2017-11-21 22:55:45 +01:00
lippserd a840a6d1f1
Merge pull request #3112 from Icinga/fix/filter-hints-for-ide-3111
Filter: new abstract methode and better IDE hints
2017-11-21 16:50:45 +01:00
lippserd df1e7683c8
Merge pull request #3041 from Icinga/feature/auto-detaching-dom-elements-3039
Implement auto-detaching DOM elements
2017-11-21 16:48:59 +01:00
Markus Frosch 2493cb8d63 Fix incorrect uses of translation around sprintf 2017-11-21 15:47:46 +01:00
Thomas Gelf 6e382093f4 Modules, Bootstrap: play nice with PHARs
fixes #3113
2017-11-21 14:15:41 +01:00
Alexander A. Klimov c7ffb41b02 Implement togglable flyover
refs #3024
2017-11-21 14:05:12 +01:00
Alexander A. Klimov b000c1ae4a Implement auto-detaching DOM elements
refs #3039
2017-11-21 13:17:55 +01:00
Thomas Gelf ccd31f6438 Filter: new abstract methode and better IDE hints
fixes #3111
2017-11-21 12:29:02 +01:00
Alexander A. Klimov 71fe12393d Persist X-Icinga-WindowId across auto-refreshes 2017-11-21 11:30:36 +01:00
Markus Frosch 1aae1eab23 DBUserBackend: Replace internal crypt handling with PasswordHelper
refs #2954
2017-11-21 08:26:24 +01:00
Markus Frosch f57277aa96 Introduce PasswordHelper for safer passwords
refs #2954
2017-11-21 08:26:24 +01:00
lippserd 17718d4863
Merge pull request #3090 from Icinga/feature/configure-the-default-limit-13010
Add user preference for default number of items per page
2017-11-16 20:37:47 +01:00
Alexander A. Klimov cea52a1b4b Implement ApplicationBootstrap::getStorageDir()
refs #2582
2017-11-16 20:26:49 +01:00
lippserd 3d50729847
Merge pull request #3091 from Icinga/fix/disable-stacktraces
Fix that disabled stack straces via user prefs had no effect
2017-11-16 20:23:18 +01:00
Eric Lippmann f495b390da Apply role to all users if the role is defined with users=*
If the users directive contains at least one single asterisk, the role is applied to all users.
So, this supports roles which define users=username, ..., * and users=*

refs #3095
2017-11-16 12:02:41 +01:00
Eric Lippmann af64ca8fc8 Fix that disabled stack straces via user prefs had no effect
Web::setupFrontController() took the user object into account when checking for disabled stacktraces.
But we changed our bootstrap order some time ago so we did not have a user in this method anymore.
Now, Web::setupUser() checks for disabled stacktaces in the user prefs instead.

refs #2595
2017-11-15 17:22:54 +01:00
Alexander A. Klimov bdcb6389d8 Add user preference for default number of items per page
refs #2859

Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
2017-11-15 16:56:43 +01:00
Eric Lippmann 73a6750489 Make phpcs and PhpStorm happy w/ intentional switch, case fall-throughs
Unfortunately, PhpStorm does not regonise PSR2 fall-through comments.
On the other hand, phpcs does not support the @noinspection phpdoc comment (/**).
The fix is a mix of PSR2 comments and @noinspection tags in code comments.
2017-11-08 10:25:28 +01:00
Markus Frosch c3ef50978a style: Fix minor styleguide issues for PHPCS 2017-11-08 10:06:45 +01:00
Alexander A. Klimov cbfbb3a162 Handle enabled, but deleted modules properly
refs #2811
2017-11-08 09:48:58 +01:00
Eric Lippmann 1f5f610b04 Add newlines to AnnouncementIniRepository.php 2017-11-07 14:48:46 +01:00
Eric Lippmann 5ec14bdb9d Remove inheritdoc tags in AnnouncementIniRepository.php 2017-11-07 12:50:30 +01:00
lippserd 94922ade25
Merge pull request #3061 from ss23/crypt_fix
Modify authentication function to support alternative algorithms
2017-11-06 11:06:06 +01:00
ss23 c196a7c7c4 Modify authentication function to support alternative algorithms
The existing usage of crypt() was borderline incorrect. This simplified
function will allow hashes of other types (e.g. bcrypt) and thus
mitigate #2954 (use password_hash) until this can be implemented.

The getSalt protected method was also removed as this is no longer
required, though this can be added again in future.
2017-11-06 22:48:42 +13:00
Alexander A. Klimov 2cced5fe13 Implement local file storage 2017-11-06 10:33:54 +01:00
Alexander A. Klimov ee7fa2c48c Merge branch 'bugfix/wizard-ldap-connection-settings-discovery-failure-reasons-are-silented-2865'
fixes #2865
2017-10-26 11:14:51 +02:00
Alexander A. Klimov d13856eb39 Wizard: show LDAP connection settings discovery failure reasons
refs #2865
2017-10-26 10:25:37 +02:00
Johannes Meyer 2e1bac81ff Form: Create the form as part of method `setDefaults'
We don't care anymore about the BC in Zend version 1.12.7.
Hence we'll happily override setDefaults now. Yay!

refs #2998
2017-10-23 15:10:50 +02:00
Johannes Meyer d348d95e5e Revert "Form: Don't prevent disabled elements from getting overwritten.."
This reverts commit eb343009bb.

refs #2998
2017-10-23 15:10:37 +02:00
Markus Frosch f65759ace8 LdapUserGroupBackend: Base ambiguity decision based on isDN
Problem was: When a DN did not contain the same base DN, the check failed

This happens when you have an entry referencing a DN of another domain.
(And this value is tested as a sample)
2017-10-20 15:17:11 +02:00
Markus Frosch 28b1a00d4a LdapUtils: Add isDN function 2017-10-20 15:17:11 +02:00
Alexander A. Klimov c22efa4519 UrlValidator: translate error message 2017-10-20 14:27:33 +02:00
Markus Frosch 414ba16d8a Util/Json: Make encode compatible to PHP < 5.5 2017-10-06 12:42:34 +02:00
Alexander Aleksandrovič Klimov 2510155206 Suggest LDAP backend type based on the discovery (if any) (#2993)
fixes #2991
2017-10-06 11:23:07 +02:00