Commit Graph

273 Commits

Author SHA1 Message Date
Johannes Meyer 053c9cdcb3 Repository: Check whether a column is queried from the correct table
refs #8826
2015-05-12 15:38:29 +02:00
Johannes Meyer 44bbd93cbc DbUserBackend: Provide a custom insert and update implementation
As we're transmitting password hashes which may contain special chars
and the like, we need to utilize prepared statements with explicit types.

refs #8826
2015-05-11 16:00:24 +02:00
Matthias Jentsch 25f397042b Merge branch 'master' into feature/improve-multi-select-view-8565
Conflicts:
	modules/monitoring/application/controllers/HostsController.php
	modules/monitoring/application/controllers/ServicesController.php
	modules/monitoring/application/views/scripts/hosts/show.phtml
	modules/monitoring/application/views/scripts/list/hosts.phtml
	modules/monitoring/application/views/scripts/partials/host/objects-header.phtml
	modules/monitoring/application/views/scripts/partials/service/objects-header.phtml
	modules/monitoring/application/views/scripts/services/show.phtml
	modules/monitoring/public/css/module.less
	public/js/icinga/behavior/tooltip.js
2015-05-11 13:28:43 +02:00
Johannes Meyer b3957c556b DbUserGroupBackend: Properly utilize the insert and update capability
refs #8826
2015-05-11 13:28:01 +02:00
Johannes Meyer f1c82fc318 IniUserGroupBackend: Convert timestamps and arrays...
...to formatted datetime strings and comma separated strings respectively

refs #8826
2015-05-08 15:28:10 +02:00
Johannes Meyer 59ec11f047 IniUserGroupBackend: Extend IniRepository
We are now able to insert, update and delete user groups stored in INI files

refs #8826
2015-05-08 15:26:35 +02:00
Johannes Meyer 99be358714 Repository: Make it possible to initialize column properties lazily
refs #8826
2015-05-07 08:28:32 +02:00
Johannes Meyer 4d83b2f93d Authentication\Manager: Fix invalid class path in use statement
refs #8826
2015-05-06 12:18:57 +02:00
Johannes Meyer 4044e56a03 LdapUserBackend: Provide filter column `user'
refs #8826
2015-05-06 10:27:26 +02:00
Johannes Meyer 9c799dca22 IniUserGroupBackend: Automatically set section names on column `name'
refs #8826
2015-05-06 08:41:54 +02:00
Johannes Meyer 89029308ef IniUserGroupBackend: Extend Repository and implement UserGroupBackendInterface
Note that it was necessary to change the structure of ini files providing
the membership information. They need to be structured like our db
table rows now.

refs #8826
2015-05-05 15:24:18 +02:00
Johannes Meyer de68d78938 DbUserGroupBackend: Add case insensitive filter columns `group' and `parent'
refs #8826
2015-05-05 09:34:49 +02:00
Johannes Meyer 37e47f0d3f DbUserBackend: Add case insensitive filter column `user'
refs #8826
2015-05-05 09:34:23 +02:00
Johannes Meyer 58233b0072 DbUserGroupBackend: Extend DbRepository and implement UserGroupBackendInterface
refs #8826
2015-05-05 09:23:29 +02:00
Johannes Meyer b1454c199a Introduce interface UserGroupBackendInterface
refs #8826
2015-05-05 08:27:11 +02:00
Johannes Meyer 7b2fc1ba41 Make class UserGroupBackend being just a factory for user group backends
refs #8826
2015-05-05 08:26:38 +02:00
Johannes Meyer 842b043f7f LdapUserBackend: Use is_active as well as a default sort column
refs #8826
2015-05-04 15:56:13 +02:00
Johannes Meyer b86a0024c3 DbUserBackend: Use is_active as well as a default sort column
refs #8826
2015-05-04 15:55:36 +02:00
Johannes Meyer c441117324 LdapUserBackend: Extend Repository and implement UserBackendInterface
refs #8826
2015-05-04 12:18:25 +02:00
Johannes Meyer e74194c18e ExternalBackend: Implement UserBackendInterface
refs #8826
2015-05-04 12:15:50 +02:00
Johannes Meyer 99ac0b78ea DbUserBackend: Extend DbRepository and implement UserBackendInterface
refs #8826
2015-05-04 12:15:05 +02:00
Johannes Meyer 7b41fc020a AuthChain: Yield UserBackendInterface instead of UserBackend
refs #8826
2015-05-04 11:44:41 +02:00
Johannes Meyer 1824eb9c3b Make class UserBackend being just a factory for user backends
refs #8826
2015-05-04 11:43:53 +02:00
Johannes Meyer 68657c02ee Introduce interface Icinga\Authentication\User\UserBackendInterface
refs #8826
2015-05-04 11:40:17 +02:00
Johannes Meyer 7960e911a6 UserGroupBackend: Add support for custom backends to fetch user groups
refs #8826
refs #9122
2015-04-22 09:52:08 +02:00
Johannes Meyer a2cd5d63f1 UserBackend: Wrap config directives as part of errors in single quotes 2015-04-22 09:36:45 +02:00
Johannes Meyer a1d8ed6e8f UserBackend: Utilize ResourceFactory::create 2015-04-22 09:35:41 +02:00
Johannes Meyer c9dcddb134 UserGroupBackend: Add missing and fix existing method documentation 2015-04-22 09:35:06 +02:00
Johannes Meyer 847c02ed8e UserBackend: Add support for custom authentication backends
refs #8826
refs #8877
2015-04-22 09:28:42 +02:00
Johannes Meyer b45e576722 UserBackend: Remove testing only related code
There are no tests for this class at all.
2015-04-21 14:15:43 +02:00
Johannes Meyer 97caeb27f7 UserBackend: Add missing and fix existing method documentation
refs #8826
2015-04-21 13:59:35 +02:00
Johannes Meyer 319ca3625c LdapUserBackend: Drop redundant method hasUser
refs #8826
2015-04-21 13:15:40 +02:00
Johannes Meyer 60a8654614 ExternalBackend: Drop redundant method hasUser
refs #8826
2015-04-21 13:15:06 +02:00
Johannes Meyer 11f522d929 DbUserBackend: Drop redundant method hasUser
refs #8826
2015-04-21 13:14:50 +02:00
Johannes Meyer a7af546078 UserBackend: Drop abstract method hasUser
refs #8826
2015-04-21 13:14:27 +02:00
Johannes Meyer 6ca68f438d Move concrete UserBackend classes to Icinga\Authentication\User
refs #8826
2015-04-21 12:51:31 +02:00
Johannes Meyer 39473e8939 Move UserGroupBackend to Icinga\Authentication\User
refs #8826
2015-04-21 12:42:21 +02:00
Johannes Meyer b51ce9c7ab Move concrete UserGroupBackend classes to Icinga\Authentication\UserGroup
refs #8826
2015-04-21 12:38:57 +02:00
Johannes Meyer 8058eb0215 Move UserGroupBackend class to Icinga\Authentication\UserGroup
refs #8826
2015-04-21 12:32:18 +02:00
Alexander Klimov 967a2e82dc Use (only) "@return $this" in fluent interfaces' documentation 2015-04-07 14:24:11 +02:00
Johannes Meyer 0bc1416b10 Use the correct name for malformed LDAP attributes automatically
...or more purposefully: Guard lazy users from themselves. I hope I don't
have to explain why _this_ is not part of Icinga\Protocol\Ldap\Query...

resolves #8608
2015-03-13 11:17:43 +01:00
Johannes Meyer 39a74c4f3d LDAP-Auth backend config: Add support for custom LDAP filter rules
refs #8365
2015-03-11 09:52:14 +01:00
Johannes Meyer f3fa743022 Fix login when using a PostgreSQL database as authentication backend
fixes #8524
2015-03-06 11:03:45 +01:00
Matthias Jentsch cb0ca6d6ac Remove unused piechart code 2015-03-06 09:41:38 +01:00
Thomas Gelf 88315db1eb UserBackend: reasonable defaults for AD groups
I didn't do farther research, but those values seem to work fine.
2015-02-09 15:31:47 +01:00
Thomas Gelf 81f65a7cd4 LdapUserBackend: disable "health check"
I see no point in checking this at every login. It could however be a
nice addition for our config backends and the setup wizard. I'd also
opt for completely removing this parameter - who wants to use this
method should explicitely call it.
2015-02-09 15:29:52 +01:00
Thomas Gelf 7b1b5b9b40 Authentication\Manager: do not override user groups
Needs more care, but this way we are at least able to fetch groups
unless we get out improved implementation.
2015-02-09 15:27:50 +01:00
Johannes Meyer 8b94e4c701 Fix documentation and code style in the LdapUserBackend 2015-02-06 16:32:26 +01:00
Eric Lippmann 6bae2e0a53 Note that our license is GPL v2 or any later version in our license header instead of pointing to the license's URL 2015-02-04 10:52:27 +01:00
Eric Lippmann 5b4fab0750 Add license header
This time without syntax errors hopefully :)
2015-02-03 16:27:59 +01:00
Eric Lippmann 5fa2e3cfdc Revert "Add license header"
This reverts commit 338d067aba.
2015-02-03 16:16:26 +01:00
Eric Lippmann 4c7d120523 Revert "Fix typo in UserBackend"
This reverts commit 9fa1fd626c.
2015-02-03 16:16:26 +01:00
Eric Lippmann 160b3a96ca Revert "Fix typo in UserGroupBackend"
This reverts commit e8c4f45d68.
2015-02-03 16:16:26 +01:00
Eric Lippmann e8c4f45d68 Fix typo in UserGroupBackend 2015-02-03 16:14:13 +01:00
Eric Lippmann 9fa1fd626c Fix typo in UserBackend 2015-02-03 16:13:22 +01:00
Eric Lippmann 6517f8e2be security: Activate permissions 2015-02-03 16:08:35 +01:00
Eric Lippmann 338d067aba Add license header
fixes #7788
2015-02-03 15:51:04 +01:00
Johannes Meyer 7989b48248 Fix ldap auth when the userNameAttribute holds multiple values
fixes #8246
2015-02-03 10:15:54 +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 50fc85d7ff Rename authentication type "autologin" to "external"
refs #8274
2015-01-27 09:49:36 +01:00
Johannes Meyer d452f3218d Use "ini" as preferences store in case preferences are not configured
refs #8234
2015-01-23 16:25:24 +01:00
Johannes Meyer 14a4aaeb77 Revert "Fix that when chosing to not to store preferences an invalid config is created"
This reverts commit 6284da451e.
2015-01-23 15:23:43 +01:00
Johannes Meyer 6284da451e Fix that when chosing to not to store preferences an invalid config is created
fixes #8234
2015-01-23 14:42:09 +01:00
Eric Lippmann 44de790cc9 Security: Temporary grant all permissions 2015-01-22 17:12:49 +01:00
Eric Lippmann 2bd2f32b2e postgresql/auth: Fix that users cannot login when using PostgreSQL >= version 9.0
fixes #8251
2015-01-19 16:43:19 +01:00
Tom Ford dc0f396fbf Check LDAP username in case insensitive way
Signed-off-by: Eric Lippmann <eric.lippmann@netways.de>

refs #7991
2014-12-10 16:00:39 +01:00
Eric Lippmann 3e1583ca40 Security: Remove getPermissions and getRestrictions from the AdmissionLoader
These funtctions are superseded by getRestrictionsAndPermissions.

refs #5647
2014-11-19 15:13:45 +01:00
Eric Lippmann bed11ebb60 Security: Load user permissions and restrictions from roles.ini
refs #5647
2014-11-19 15:11:14 +01:00
Eric Lippmann b01a9a65e0 Security: Introduce AdmissionLoader::getPermissionsAndRestrictions() for loading permissins and restrictions from roles.ini
When loading from roles.ini there's currently an empty permission added which is of course a bug and will be fixed asap.

refs #5647
2014-11-19 15:10:09 +01:00
Johannes Meyer 7621f6642d Adjust usages of Icinga\Application\Config
refs #7147
2014-11-18 13:11:52 +01:00
Johannes Meyer eb4672923f Require the OpenSSL module instead of providing an unsafe fallback
refs #7163
2014-11-11 10:19:09 +01:00
Johannes Meyer 9d292269b1 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/Resource/LdapResourceForm.php
	test/php/application/forms/Config/Authentication/LdapBackendFormTest.php
2014-11-11 09:44:11 +01:00
Johannes Meyer 2bb7217d04 Do not require the openssl extension 2014-11-10 11:20:02 +01:00
Johannes Meyer 124f64ad89 Merge branch 'master' into bugfix/drop-zend-config-7147 2014-11-07 14:07:15 +01:00
Johannes Meyer 7b99b74ae1 Prefer Icinga\Application\Config instead of Zend_Config
refs #7147
2014-11-07 13:53:03 +01:00
Matthias Jentsch d0706a55ea Chain exceptions in LdapUserBackend instead of printing the message 2014-11-06 16:32:43 +01:00
Johannes Meyer 7569c55796 Fix how password hashes are stored and retrieved in DbUserBackend 2014-11-04 15:52:09 +01:00
Johannes Meyer 170ded6510 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	library/Icinga/Authentication/Backend/LdapUserBackend.php
	library/Icinga/File/Ini/IniWriter.php
2014-11-04 14:22:53 +01:00
Johannes Meyer 8913bf53c9 Fix salt extraction 2014-11-04 13:03:36 +01:00
Johannes Meyer 99277383b9 Fix retrieving a user's data from the database 2014-11-04 13:03:12 +01:00
Johannes Meyer cad8f7538e Leave it up to the database to decide what is the current time 2014-11-04 12:42:39 +01:00
Matthias Jentsch f9fee2df70 Do not interrupt authentication chain on invalid ldap connection infos
Catch LdapExceptions and throw AuthenticationException to not interrupt authentication chain

fixes #7497
2014-11-04 12:35:41 +01:00
Eric Lippmann 16352fc10c Move Logger to the Application namespace
fixes #7148
2014-10-31 10:27:17 +01:00
Johannes Meyer 4f1e1ddb6f Adjust the DbUserBackend to reflect the new database schema 2014-10-30 15:40:07 +01:00
Johannes Meyer c1bff9a26e Merge branch 'master' into feature/setup-wizard-7163 2014-10-30 10:38:21 +01:00
Eric Lippmann f68c591a46 LDAP Auth: Make group loading really optional
fixes #7432
2014-10-23 03:50:03 +02:00
Johannes Meyer 8c62c66a4e Make regular expression pattern in autologin backend being fully optional 2014-10-20 15:14:14 +02:00
Eric Lippmann 424cee6b4a Auth: Load user groups using the new user group backends 2014-10-20 13:43:40 +02:00
Eric Lippmann aa56f3010c lib: Add DbUserGroupBackend 2014-10-20 13:42:33 +02:00
Eric Lippmann d170cf0c9d lib: Replace Membership with IniUserGroupBackend 2014-10-20 13:42:15 +02:00
Eric Lippmann d1228deef2 lib: Add UserGroupBackend as base class and factory for user group backends 2014-10-20 13:41:33 +02:00
Eric Lippmann cee261bf7e Use lowercase username and user groups for loading user permissions and restrictions 2014-10-20 13:36:37 +02:00
Matthias Jentsch 9a9aa84e23 Respect base_dn in LdapUserBackend 2014-10-14 14:37:21 +02:00
Matthias Jentsch dd21b7b5d1 Make sure that we work only with arrays when handling LDAP groups 2014-10-09 10:14:42 +02:00
Matthias Jentsch 04e83a53c5 Add `base_dn' directive to LDAP backend config 2014-10-09 10:10:09 +02:00
Johannes Meyer 1cbe2451a8 Merge branch 'master' into feature/setup-wizard-7163
Conflicts:
	application/forms/Config/Resource/StatusdatResourceForm.php
2014-10-08 16:34:31 +02:00
Johannes Meyer 96ba45d896 Convert password salt to ASCII to avoid encoding issues with PostgreSQL 2014-10-08 15:26:42 +02:00
Johannes Meyer 393191ced1 Add admin creation routine
refs #7163
2014-10-08 10:26:12 +02:00
Alexander Fuhr 421263af00 Make LDAP Groups optional
refs #7343
2014-10-06 13:35:17 +02:00
Alexander Fuhr 017d4b8c9d Introduce Groups from LDAP to User Object 2014-10-01 16:03:42 +02:00