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.
Check if authentication is possible during authentication, to generate more
useful error and log messages, in case the backend configuration is wrong
ref #6457
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.
New interface ConnectionInterface attempts to aggregate things.
Extended Filterable interface, added Filter-related functions. Please
note that apply will probably get dropped later on, I'll keep it for
compatibility reasons right now.
refs #6418
When no (default) configuration is available for dashboards
application dies not very gracefully. Display error message
and guid the user to the solution is a better way.
fixes#6412
This doesn't make it much better but allows to build a package
libicinga-vendor-php placing those files to /usr/share/php/IcingaVendor
or similar.
refs #4075
A module loaded manually could also exist in the list of enabled
modules if a configuration is given and a module with the same name
has been enabled. This used to confuse documentation.
...enabled nor installed by passing their base directory. In favour
of this parameter I dropped the possibility to inject a Module class
for testing purposes. There is no such test and I see no point in
doing so.
refs #6411
This used to work fine as long as you didn't try to interfere from
outside to influence the cli loader. The instance returned by
cliLoader() was not the same as used internally once dispatching the
CLI command.
refs #6411
This fixes the problem that CLI scripts or other applications without
an application directory would badly fail because of missing web forms.
refs #6411
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
Our user backends log exceptions thrown during authentication but they don't throw
a exception to inform the caller that an error occured. The new `AuthenticationException'
class should be thrown in that case.