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
Eric Lippmann
74bd9b319d
restrictions: Include restriction's section name in user restrictions
2014-10-01 14:08:21 +02:00
Eric Lippmann
084691570e
permissions: Use a comma-separated list as config instead of the `permission_*' directives
...
Permissions are now set using a comma-separated list of permissions using the `permissions' config because
the `users' and `groups' are comma-separated lists too.
2014-10-01 08:14:03 +02:00
Johannes Meyer
8fcf21a6b8
Make it possible to retrieve a list of available users for authentication
...
refs #7163
2014-09-29 11:21:40 +02:00
Johannes Meyer
c00dbf9f46
Write session on response
...
There should not be any necessity to write the session once changes are
being made to it. We now track whether changes were made and write
the session when responding to the user's request if so.
2014-09-24 10:46:35 +02:00
Eric Lippmann
f1d3b72f05
autologin: Fix externally-authenticated users still being authenticated after external authentication is disabled
...
The if condition for revoking authentication if the username changed relied on having the `$_SERVER' variable set which was used for authentication.
Authentication is now revoked if the username changed or external authentication is no longer in effect.
refs #6462
2014-09-18 15:20:46 +02:00
Eric Lippmann
794910256a
Use `User::can()' in `hasPermission()' of the authentication manager
2014-09-18 14:57:24 +02:00
Alexander Klimov
45638b218c
Throw IcingaException rather than Exception
...
fixes #7014
2014-08-27 16:03:15 +02:00
Alexander Klimov
9c5878cbbe
ConfigurationError: extend IcingaException
...
refs #6931
2014-08-22 11:46:11 +02:00
Alexander Klimov
b764993091
AuthenticationException: extend IcingaException
...
refs #6931
2014-08-22 10:59:52 +02:00
Marius Hein
56a29354d3
AutoLogin: Check the remote username against logged in user
...
fixes #6462
2014-07-30 12:54:08 +02:00
Marius Hein
e2c761a7aa
AutoLogin/Logout: Remove own session namespace
...
Store data in the user and implement interface to left
backends store remote information.
fixes #6461
2014-07-30 12:35:55 +02:00
Eric Lippmann
294728ac47
Revert "Autologin: Test logged session against remote user"
...
This reverts commit 64954e9924
.
If the strip_username_regex is configured on the autologin backend and applies on a user's name,
the authenticated user's username does never match the REMOTE_USER server variable.
Thus the application will logout/login on every request which results in a redirect loop.
refs #6462
2014-07-29 17:50:44 +02:00
Marius Hein
64954e9924
Autologin: Test logged session against remote user
...
fixes #6462
2014-07-29 12:06:43 +02:00
Marius Hein
8b9d446d2e
Autologin: Remove deprecated autologin methods
...
Remove methods from manager because autologin
is now handled with special backends (AutoLoginBackend).
The session is used to store the status about a remote
user authentication to send a 401 header to the client
upon logout.
refs #6461
2014-07-29 10:48:57 +02:00
Johannes Meyer
b40027b6c7
Purge session when logging out
...
fixes #6739
2014-07-16 09:55:22 +02:00
Johannes Meyer
19f05256a0
Only call session_start() when reading from session
...
fixes #6383
2014-07-16 09:55:22 +02:00
Johannes Meyer
3105c2059e
Remove license headers from all files
...
refs #6309
2014-07-15 13:43:52 +02:00
Matthias Jentsch
57f3023ec4
Fix coding style
2014-07-03 16:20:45 +02:00
Matthias Jentsch
c18b6f26f0
Throw Ldap\Exception when something goes wrong in a Ldap connection
2014-06-25 12:41:17 +02:00
Matthias Jentsch
77a9dd1e6e
Throw exception on fetchDN, when no row exists
...
Instead of fetchDN, authentication now uses hasUser to check if the user
exists before querying the password, to prevent the exception from messing
up the whole authentication process
2014-06-23 14:02:45 +02:00
Thomas Gelf
4bada86731
Authentication\Manager: fix fromRemoteUser boolean
...
This used to be always true in case an autologin backend was enabled.
We only have a REMOTE_USER if there is such.
2014-06-20 12:58:17 +02:00
Thomas Gelf
d2ccc68214
Merge remote-tracking branch 'origin/master' into feature/query-interfaces-6018
...
Conflicts:
modules/monitoring/application/controllers/ListController.php
2014-06-17 09:47:14 +00:00
Eric Lippmann
db73d324de
Autologin: Fix that the backend name must have been `autologin'
...
Before, the code validated the name of the backend instead of the `backend' directive against `autologin'.
2014-06-12 17:05:54 +02:00
Eric Lippmann
7d2ee41f42
Autologin: Fix PHPDoc
2014-06-11 15:46:59 +02:00
Eric Lippmann
992ccf4f6d
Autologin: Actually set the username upon authentication
...
Before, when using autologin the username of the authenticated user always was the empty string.
2014-06-11 15:46:59 +02:00
Eric Lippmann
65a2bd41bc
Autologin: Do not use absolute `use'
2014-06-11 15:46:58 +02:00
Eric Lippmann
7215ba4f59
Autologin: Do not require a bogus password in the source code
2014-06-11 15:46:58 +02:00
Eric Lippmann
63fc8eb27e
Autologin: Use REMOTE_USER for authentication
...
It's not safe to rely on PHP_AUTH_USER and PHP_AUTH_TYPE because
PHP cgi handlers (fgcid for example) only set the REMOTE_USER environment variable
and the authentication type for negogiation methods (Kerberos for example) is neither
Basic nor Digest.
We may have to add REDIRECT_REMOTE_USER for authentication for proxy setups.
2014-06-11 15:46:58 +02:00
Eric Lippmann
c09341d77e
Autologin: Do NOT sanitize username
...
I don't know the reason why this was done initially but a username must not be changed.
2014-06-11 15:46:58 +02:00
Matthias Jentsch
c42c7977be
Call extended backend health checks when creating ldap authentication backends
...
fixes #6457
2014-06-11 15:09:36 +02:00
Matthias Jentsch
6c82cb8988
Check ldap backend health during Authentication
...
Check if authentication is possible during authentication, to generate more
useful error and log messages, in case the backend configuration is wrong
ref #6457
2014-06-11 15:08:05 +02:00
Matthias Jentsch
bca166c644
Do not throw an exception when the username does not exist
...
refs #6457
2014-06-11 15:08:05 +02:00
Thomas Gelf
db3accc704
Data\Db: rename Query and Connection to Db...
...
Class names in namespaces should not be chosen as once we didn't have
such. The fact that we already did "use Db\Connection as DbConnection"
is the best hint that naming was wrong.
So this patch renames Db\Connection to Db\DbConnection and does the
same with DbQuery. DbQuery has been adjusted to fit our new SimpleQuery
and to handle the new Filter implementation.
2014-06-06 06:43:13 +00:00
Marius Hein
29f593a357
Authentication: Add backend to handle external authentication
...
Drop external auth configuration from config.ini and move
implementation into a single backend provider named
'autologin'. This provider can strip realm names from
username with a custom regexp.
fixes #6081
2014-06-03 17:59:22 +02:00
Eric Lippmann
cfcaf019bd
User backends: Throw exception when authentication fails due to an exception
...
refs #5685
2014-06-02 15:52:58 +02:00
Eric Lippmann
2274b6e11e
lib: Add phpdoc to class `AuthChain'
...
refs #5685
2014-06-02 15:46:15 +02:00
Johannes Meyer
bafa8cc032
Fix authentication error handling
2014-03-28 14:45:03 +01:00
Marius Hein
c92e1307f6
Fix: Database login
...
fixes #5706
2014-03-06 14:07:33 +01:00
Eric Lippmann
07d04628cf
Merge branch 'feature/installation-and-configuration-cleanup-5638'
...
Conflicts:
config/config.ini.in
library/Icinga/Application/ApplicationBootstrap.php
library/Icinga/Application/Cli.php
library/Icinga/Application/EmbeddedWeb.php
library/Icinga/Application/Logger.php
library/Icinga/Application/Modules/Manager.php
library/Icinga/Application/Web.php
library/Icinga/Authentication/Backend/DbUserBackend.php
library/Icinga/Authentication/Manager.php
library/Icinga/User/Preferences/IniStore.php
test/php/library/Icinga/Application/LoggerTest.php
2014-03-03 19:03:39 +01:00
Eric Lippmann
39c80dccaf
Decouple authentication backend creation from Icinga\Authentication\Manager
...
Add authentication backend type msldap with default values for user_class
and user_name_attribute. Backend type ldap now logs an error when user_class
and user_name_attribute ist not configured. Rename membership.ini to
memberships.ini since all our INI configuration files are in the plurar
where it makes sense. The AuthenticationController now handles
authentication
refs #5685
refs #5638
fixes #5218
2014-03-03 17:21:17 +01:00
Matthias Jentsch
99668e87e5
Refresh session id on Authentication
...
To prevent session fixation, create a new session id each time authenticate is
called.
refs #5625
2014-02-26 19:23:34 +01:00
Matthias Jentsch
b118e9679d
When webserver setting is missing regular authentication will be used
...
Check if the remote user is set and use regular authentication when the key is missing.
refs #5405
2014-02-26 18:08:48 +01:00
Matthias Jentsch
a8f765fa3b
Add extern authentication
...
Provide a new settings authenticationMode and delegate the
authentication handling to the webserver when the external authentication mode
is set. Add a new view 'logout' that will be shown after logout from external
authentication as the regular redirect to login is not possible.
refs #5405
2014-02-26 18:08:48 +01:00
Johannes Meyer
3555e66018
Make IcingaWeb using the new log wrapper
...
refs #5683
2014-02-26 11:19:52 +01:00
Johannes Meyer
68357e9ca2
Fix coding style
2014-02-21 14:07:32 +01:00
Eric Lippmann
25665dec24
Vagrant: Add authentication.ini and resources.ini to /etc/icingaweb
...
refs #5638
2014-02-21 10:16:16 +01:00
Eric Lippmann
7fa6668b64
Make Icinga Web 2 work without any config file
...
refs #5638
fixes #5523
2014-02-20 13:53:28 +01:00
Eric Lippmann
8edf421c45
Replace debug log with respecting log priorities
...
refs #5638
fixes #5522
2014-02-18 14:46:15 +01:00
Eric Lippmann
69a482d106
Auth: Connect only when a authentication backend is used. Fix log in error messages
...
refs #5506
refs #5638
fixes #4931
2014-02-18 09:33:33 +01:00
Eric Lippmann
08d7edebfc
Decouple (automatic) preferences storage from user preferences (WIP)
...
DbStore, persisting preferences and tests not yet reworked.
2014-02-14 17:28:11 +01:00
Eric Lippmann
41ffa1d7c2
Fix PHP Fatal error: Class 'Icinga\Authentication\Membership' not found in ManagerTest.php
2014-02-14 12:11:49 +01:00
Eric Lippmann
d6768872c7
Revert "Change setup behavior of the AuthenticationManager to a lazy approach"
...
This reverts commit 226eb4eded
.
Conflicts:
library/Icinga/Authentication/Manager.php
This fix is not appropriate
refs #5506
2014-02-14 11:20:33 +01:00
Marius Hein
8a604f1c2c
Implement structures for permissions, restrictions and membership
...
refs #4624
2014-02-12 17:03:18 +01:00
Johannes Meyer
0b28bd31e5
Fix exception when the password of a valid ldap user is invalid
2014-01-29 10:41:17 +01:00
Johannes Meyer
ac0b041523
Remove session handling from the authentication manager
...
refs #5510
2014-01-24 14:44:19 +01:00
Thomas Gelf
0f565aae6a
Added permission handlers and related sample config reader
...
Please see feature #4108 for sample usage
refs #4108
2014-01-22 13:06:59 +00:00
Matthias Jentsch
226eb4eded
Change setup behavior of the AuthenticationManager to a lazy approach
...
The authentication manager should only try to set up all backends when
necessary. Remove the backend setup from the constructor and call it only when it is actually needed.
fixes #5506
2014-01-22 13:04:11 +01:00
Matthias Jentsch
85dbd86e5b
Change all UserBackends to a lazy connection-behavior
...
refs #5506
2014-01-22 13:04:11 +01:00
Marius Hein
263f09a94c
Add email column to extensible features
...
refs #5151
2013-11-28 17:23:55 +01:00
Marius Hein
93d233f37d
Make DbUserBackend extensible
...
Fix: Swap hmac secret key
refs #5151
2013-11-27 11:10:07 +01:00
Matthias Jentsch
2a0add3ec3
Fix messages in ConfigController
...
Store messages in the current user session to be able to fetch messages from
other controllers, so that the use can be redirected back to the index, instead
of staying in the original action
refs #5100
2013-11-20 19:10:38 +01:00
Matthias Jentsch
941ce6d68e
Fix bug that caused ajax-request to override values written to the session
...
Authentication/Session.php and its Subclasses do not have a open/closed -state
anymore. Read will refresh the session, write will always write the changes,
and opening/closing will be handled internally.
refs #5101
2013-11-20 12:01:40 +01:00
Matthias Jentsch
bd38e998d7
Provide a cleaner interface for the Authentication Backends
...
refs #4786
2013-11-06 14:49:16 +01:00
Matthias Jentsch
ad08691362
Extend resources.ini to contain all resources, including ldap
...
Remove the old calls to DbAdapterFactory and use ResourceFactory instead. Remove
the DbAdapterFactory and fix all unit tests that have been broken due to the changes.
Change the functionality of the ResourceFactory to also handle LdapConnections
resolves #4587
2013-11-06 10:20:15 +01:00
Eric Lippmann
ca1d50ae53
Rename Icinga 2 Web to Icinga Web 2
2013-10-23 15:11:06 +02:00
Marius Hein
dd214bbe16
Implement disable flag for authentication backends
...
refs #4941
2013-10-22 17:50:21 +02:00
Marius Hein
439168ecfb
Fix ldap connection port setting
...
refs #4941
2013-10-22 17:50:21 +02:00
Eric Lippmann
a5908c9553
CS: Replace multiple empty lines with one
...
find application/ library/Icinga/ test/ modules/ -name *.php | xargs sed -i '/^$/N;/^\n$/D'
2013-09-04 18:36:10 +02:00
Eric Lippmann
35fd9fd391
CS: Remove whitespaces at end of line
...
find application/ library/ test/ modules/ -name *.php | xargs sed -i 's/\s\+$//'
2013-09-04 18:27:16 +02:00
Marius Hein
446da85a88
UserBackend: Fix interface in test
...
refs #4593
2013-08-30 15:32:06 +02:00
Marius Hein
e2e744a424
Fix authentication chain
...
refs #4593
2013-08-30 14:46:52 +02:00
Marius Hein
845f181001
CS: Fix UserBackend interface
...
refs #4641
2013-08-30 12:50:57 +02:00
Marius Hein
bed759d597
CS: Fix session classes
...
refs #4641
2013-08-30 12:50:57 +02:00
Marius Hein
7765877318
CS: Fix LdapUserBackend
...
refs #4641
2013-08-30 12:50:57 +02:00
Marius Hein
c77a48ff1f
CS: Fix DbUserBackend
...
refs #4641
2013-08-30 12:50:57 +02:00
Marius Hein
7c8252a983
Rename class Credentials to Credential
...
refs #4641
2013-08-30 12:50:57 +02:00
Marius Hein
83d20a6175
AuthManager: Fix tests
...
refs #4641
2013-08-30 12:50:28 +02:00
Marius Hein
dfb7238b81
AuthManager: Implement backend chain
...
refs #4641
refs #4590
refs #4593
2013-08-30 12:50:28 +02:00
Jannis Moßhammer
0b515e39ac
Implement {app} placeholder and Icinga\Config::resolvePath()
...
refs #4642
2013-08-29 11:48:32 +02:00
Jannis Moßhammer
d0ac97f335
Configure fixes, regression test for 4606
...
The configure routine still has to be improved, right now unused
authentication backends are commented out
refs #4491
refs #4606
refs #4640
2013-08-29 11:48:32 +02:00
Jannis Moßhammer
4e41ce5cdc
Add logic validation for database authentication backends
...
refs #4546
2013-08-29 11:48:32 +02:00
Jannis Moßhammer
17e6402aa9
Split up authentication form, logic connectivity check
...
refs #4606
refs #4622
refs #4602
refs #4546
2013-08-29 11:48:29 +02:00
Marius Hein
0c69dbf482
CS: Fix for DbAdapter, Auth/Manager and Preferences/DbStore
...
refs #4596
2013-08-26 11:09:37 +02:00
Matthias Jentsch
49cf62a9dc
Fix database related bugs
...
Fix coding standards in database schemes. Use DbAdapterFactory in all unit
tests instead of creating own adapters. Fix DbUserBackend and DbStore to use
FETCH_OBJ, instead of FETCH_ASSOC, to handle it consistently in the whole
application. Remove unnecessary table columns from the "account" scheme.
refs #4577
refs #4578
refs #4596
refs #4599
refs #4627
2013-08-26 11:09:37 +02:00
Marius Hein
2debc7826b
Deactivate group backend initializing
...
refs #4624
2013-08-23 17:28:12 +02:00
Matthias Jentsch
e6c57f029d
Fix code styling to comply with coding standard
...
refs #4503
2013-08-15 14:58:08 +02:00
Matthias Jentsch
7f30b587be
Change the StoreFactory to work with the DbAdapterFactory and fix code styling
...
Change the StoreFactory configuration to reference to a resource instead of
defining the whole database. Additionally fix docstrings, fix imports and fix
function calls to comply to coding style standards.
refs #4503
2013-08-15 14:16:34 +02:00
Matthias Jentsch
68deb735c0
Add the DbAdapterFactory to instanciate database adapters using resource names
...
Create the DbAdapterFactory to instanciate db adapters, add resources.ini to configure resources, change
the authentication Manager to fall back to backends with lower priority in case
of errors, update the current UserBackends to the changed environment. Also
adjust the documentation and existing unit tests.
resolves #4503
2013-08-14 16:22:58 +02:00
Eric Lippmann
93ae6d6811
Framework: mv Icinga\Config\Config to Icinga\Application\Config
...
refs #4543
2013-08-12 15:02:25 +02:00
Matthias Jentsch
56e47fd084
Add an ini writer for configuration files
...
Add an ini writer that respects the file structure and the comments that may be
already present in the config file. Move Application/Config.php into
Config/Config.php.
refs #4352
2013-08-07 15:58:42 +02:00
Marius Hein
f3ed73175b
User preferences: Session store and glue to build instance
...
refs #4069
2013-08-05 16:56:02 +02:00
Marius Hein
a1a8d4c157
Code compliance change and rename refs to User
...
refs #4066
2013-07-30 14:06:46 +02:00
Marius Hein
8510d57cf8
Prepare user settings api
...
Rework application bootstrap, move user object to its new location, implement web
request class to handle the user object.
refs #4066
2013-07-30 14:06:46 +02:00
Matthias Jentsch
e51737f42a
Fix the installation manual, comments and give the unit-test functions a more
...
verbose name
refs #3769
2013-07-29 11:42:31 +02:00
Matthias Jentsch
94e9ffc7b3
Fix comments
...
refs #3769
2013-07-26 15:57:37 +02:00
Jannis Moßhammer
306a51271b
Change 'user' table to 'account', error handling and docs
...
Fix installation instructions for postgresql, the user table is now
'account', as user is a keyword in some rdbms, now catching exceptions
and returning auth failed while logging errors
refs #3769
2013-07-26 15:01:52 +02:00
Matthias Jentsch
ce95511890
Change default database to "icingaweb" and add installation instructions
...
Set the default database and user to "icingaweb" in the authentication.ini. Add
instructions about how to set up the databases to authentication.ini.
refs #3769
2013-07-26 13:10:00 +02:00
Matthias Jentsch
fd4cbf1c5b
Add default login to the authentication database
...
refs #3772
2013-07-26 13:10:00 +02:00
Matthias Jentsch
2807982f72
Remove crypto-module and use libraries instead
...
Remove the crypto-module to reduce amount of dependencies and use hash_hmac
with SHA256 instead.
refs #3769
2013-07-26 13:09:59 +02:00
Matthias Jentsch
3ff0c0f02a
Adds DbUserBackend to handle the authentication against a sql db.
...
Users should be able to authenticate against an internal DB without setting up
additional authentication domains.
refs #3769
2013-07-26 13:09:59 +02:00
Jannis Mosshammer
e8204f4755
Merge branch 'feature/service-detail-view-4181' of ssh://git.icinga.org/icinga2-web
...
Conflicts:
library/Icinga/Application/Logger.php
library/Icinga/Application/Web.php
library/Icinga/Authentication/Backend/LdapUserBackend.php
library/Icinga/Authentication/Credentials.php
library/Icinga/Authentication/Manager.php
library/Icinga/Authentication/PhpSession.php
library/Icinga/Authentication/Session.php
library/Icinga/Authentication/User.php
library/Icinga/Authentication/UserBackend.php
library/Icinga/Backend/AbstractBackend.php
library/Icinga/Backend/DataView/ObjectRemappingView.php
library/Icinga/Backend/Query.php
library/Icinga/Backend/Statusdat/DataView/StatusdatHostView.php
library/Icinga/Backend/Statusdat/HostgroupsummaryQuery.php
library/Icinga/Backend/Statusdat/HostlistQuery.php
library/Icinga/Backend/Statusdat/ServicegroupsummaryQuery.php
library/Icinga/Backend/Statusdat/ServicelistQuery.php
library/Icinga/Exception/ConfigurationError.php
library/Icinga/Exception/MissingParameterException.php
library/Icinga/Exception/NotImplementedError.php
library/Icinga/Exception/ProgrammingError.php
library/Icinga/Exception/SystemPermissionException.php
library/Icinga/Protocol/AbstractQuery.php
library/Icinga/Protocol/Commandpipe/Acknowledgement.php
library/Icinga/Protocol/Commandpipe/CommandPipe.php
library/Icinga/Protocol/Commandpipe/Comment.php
library/Icinga/Protocol/Commandpipe/Downtime.php
library/Icinga/Protocol/Commandpipe/Exception/InvalidCommandException.php
library/Icinga/Protocol/Commandpipe/IComment.php
library/Icinga/Protocol/Commandpipe/PropertyModifier.php
library/Icinga/Protocol/Ldap/Connection.php
library/Icinga/Protocol/Ldap/Exception.php
library/Icinga/Protocol/Ldap/LdapUtils.php
library/Icinga/Protocol/Ldap/Node.php
library/Icinga/Protocol/Ldap/Query.php
library/Icinga/Protocol/Ldap/Root.php
library/Icinga/Protocol/Statusdat/Exception/ParsingException.php
library/Icinga/Protocol/Statusdat/IReader.php
library/Icinga/Protocol/Statusdat/ObjectContainer.php
library/Icinga/Protocol/Statusdat/Parser.php
library/Icinga/Protocol/Statusdat/Query.php
library/Icinga/Protocol/Statusdat/Query/Expression.php
library/Icinga/Protocol/Statusdat/Query/Group.php
library/Icinga/Protocol/Statusdat/Query/IQueryPart.php
library/Icinga/Protocol/Statusdat/Reader.php
library/Icinga/Protocol/Statusdat/RuntimeStateContainer.php
library/Icinga/Protocol/Statusdat/View/AccessorStrategy.php
library/Icinga/Web/ActionController.php
library/Icinga/Web/Form.php
library/Icinga/Web/Hook/Configuration/ConfigurationTab.php
library/Icinga/Web/Hook/Configuration/ConfigurationTabBuilder.php
library/Icinga/Web/Hook/Configuration/ConfigurationTabInterface.php
library/Icinga/Web/Hook/Grapher.php
library/Icinga/Web/Hook/Toptray.php
library/Icinga/Web/ModuleActionController.php
library/Icinga/Web/Notification.php
library/Icinga/Web/Paginator/Adapter/QueryAdapter.php
library/Icinga/Web/Paginator/ScrollingStyle/SlidingWithBorder.php
library/Icinga/Web/Widget.php
modules/monitoring/application/views/helpers/MonitoringCommands.php
modules/monitoring/application/views/helpers/MonitoringFlags.php
modules/monitoring/application/views/helpers/MonitoringProperties.php
modules/monitoring/application/views/scripts/show/components/comments.phtml
modules/monitoring/application/views/scripts/show/components/downtime.phtml
modules/monitoring/application/views/scripts/show/components/flags.phtml
modules/monitoring/application/views/scripts/show/components/properties.phtml
modules/monitoring/application/views/scripts/show/header.phtml
modules/monitoring/application/views/scripts/show/host.phtml
modules/monitoring/application/views/scripts/show/service.phtml
modules/monitoring/library/Monitoring/Backend/AbstractBackend.php
modules/monitoring/library/Monitoring/Backend/Ido/Query/DowntimeQuery.php
modules/monitoring/library/Monitoring/Backend/Ido/Query/StatusQuery.php
modules/monitoring/library/Monitoring/Backend/Statusdat.php
modules/monitoring/library/Monitoring/Backend/Statusdat/Criteria/Order.php
modules/monitoring/library/Monitoring/Backend/Statusdat/DataView/StatusdatServiceView.php
modules/monitoring/library/Monitoring/Backend/Statusdat/Query/GroupsummaryQuery.php
modules/monitoring/library/Monitoring/Backend/Statusdat/Query/Query.php
modules/monitoring/library/Monitoring/Command/Meta.php
modules/monitoring/library/Monitoring/View/DowntimeView.php
modules/monitoring/test/php/application/views/helpers/MonitoringCommandsTest.php
modules/monitoring/test/php/application/views/helpers/MonitoringPropertiesTest.php
modules/monitoring/test/php/library/Command/MetaTest.php
2013-07-23 16:33:07 +02:00
Jannis Moßhammer
a0839ea0da
Add service detail view
...
refs #4181
2013-07-22 16:03:36 +02:00
Marius Hein
5489c2fa2e
Update license header
...
refs #4407
2013-07-15 12:26:10 +02:00
Eric Lippmann
51755209b6
Adapt usage of config class
...
refs #4354
2013-07-12 15:43:23 +02:00
Marius Hein
6be510b05e
License writer
...
Update license headers
refs #4262
2013-07-03 14:17:49 +02:00
Eric Lippmann
6eade9c023
Fix use of already replaced class Icinga\Web\Session
...
refs #4301
2013-06-28 09:13:08 +02:00
Jannis Moßhammer
934163dd04
Add PHP Documentation to Authentication
...
Documented all currently existing classes underneath the
Authentication package
refs #4350
2013-06-27 15:24:22 +02:00
Marius Hein
72bb02d390
Module administration
...
Rebase fix ldap auth for testing issue.
refs #4092
2013-06-26 16:48:07 +02:00
Marius Hein
a1327a384c
Fix Authentication workflow
...
Fix ldap backends to use Credentials to work with. Fix
some tests to use include right files.
refs #4340
2013-06-25 12:24:52 +02:00
Jannis Moßhammer
8192c19424
Fix Authentication workflow
...
- The authentication controller now uses the Authentication/Manager class,
also there were some issues in the Session creation, this has been removed
from the Bootstrap now, as the Controller must decide how to open a session
(read-only or read/write).
- The tests reflect a few chagnes, as the move from the CSRF token generation
to the Formbuilder.
- Notificaiton now doesn't use Zend Session
refs #4340
2013-06-25 11:54:42 +02:00
Marius Hein
c905b1f490
Test and move bootstrapping/web code to source tree
...
Move code from incubator to web. Only files needed to show
welcome moved.
refs #4249
2013-06-17 08:49:27 +02:00
Marius Hein
ed53ab6c9d
Refactor Authentication Code
...
Fix PSR, fix testing
refs #4265
2013-06-11 13:53:42 +02:00
Marius Hein
8797d3e095
Refactor Authentication Code
...
Drop empty files
refs #4256
2013-06-11 13:35:53 +02:00
Jannis Moßhammer
3199f21f29
Added License header, removed deprecated or empty files
...
refs #4265
2013-06-11 13:33:16 +02:00
Jannis Moßhammer
da43813de9
Update Backendpath for Authentication
...
Backends are now located in the Icinga/Authentication/Backend folder
refs #4265
2013-06-11 13:33:16 +02:00
Jannis Moßhammer
e325ad3417
Add LdapUserBackend and (skipping) test
...
The test is skipped due to the tight coupling of the Ldap Protocol
Backend to the rest of the application, this has to be addressed
as soon as the Connection is cleaned up
refs #4265
refs #4250
2013-06-11 13:33:15 +02:00
Jannis Moßhammer
70e8562814
Add PhpSession with tests
...
PhpSession handles file based sessions as supported by PHP
refs #4265
refs #4250
2013-06-11 13:32:33 +02:00
Jannis Moßhammer
db61cfafe1
Update and test Auth/Manager implementation
...
- remove Storable inheritance from User and make it a plain DAO
- remove Authorization methods from User
refs #4265
refs #4250
2013-06-11 13:32:33 +02:00
Jannis Moßhammer
06b7b9ee2e
Add Auth/Manager.php, currently without tests
...
The Auth Manager class incorporates the functionality of the
Backend.php and Auth.php class and handles authentication. The
authorization parts from the Auth.php (hasPermission(), etc.) have
been removed and will be added to the user class
refs #4265
2013-06-11 13:27:53 +02:00
Jannis Moßhammer
9206b30254
Add basic, untested skeleton for Session and PHPSession
...
As we decided to remove Zend_Session due to locking issues,
we have to implement our session handling here. This is
the basic, untested code which will be tested in the next step
refs #4265
2013-06-11 13:27:53 +02:00
Jannis Moßhammer
d1f6668fe7
Add library from incubator and teststubs
...
This commit only contains the untested libaries from the incubator
and autogenerated teststubs and is the basis for writing the tests
refs #4250
2013-06-11 13:23:59 +02:00
Eric Lippmann
0098053187
Remove empty files from the Icinga library
...
refs #4257
2013-06-07 15:46:33 +02:00
Jannis Moßhammer
54ccb9b12a
Move libraries from incubator to working tree for evaluation
...
Add all untested files from incubator's library/Icinga to working
tree library/Icinga
refs #4257
2013-06-07 15:46:33 +02:00