Commit Graph

24 Commits

Author SHA1 Message Date
e19ada40dd Fix PR 54463 by removing an optional 'standard' parameter.
It has been no-une for more than 10 years and is not documented.
This also makes the code more consistent with other mod_auth modules.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1484398 13f79535-47bb-0310-9956-ffa450edef68
2013-05-20 08:29:21 +00:00
40431c8d75 Add some caching for password hash validation.
Password hash functions must be expensive in order to be secure. But
if they have to be re-evaluated for every request, performance
suffers.

As a minimal remedy, cache the most recent result for every
connection. This gives a great performance boost if a web browser
does many requests on the same connection with the same
user+password.  In principle, this may keep the plain text password
around longer than before. But in practice, there won't be much
difference since user+password can already remain in some unused
data bucket for longer than the request duration.

A proper solution still needs to be found for connections from
proxies which may carry requests for many different users.

While it currently only requires the conn_rec, the new
ap_password_validate() function takes username and request_rec to
allow future extensions, like detection of brute-force attempts.



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1427548 13f79535-47bb-0310-9956-ffa450edef68
2013-01-01 20:16:30 +00:00
92e366007c Add lots of unique tags to error log messages
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1209766 13f79535-47bb-0310-9956-ffa450edef68
2011-12-02 23:02:04 +00:00
7f1d8f6aad Log something nicer than "Internal error: pcfg_openfile() called
with NULL filename" if no password file is configured


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1070096 13f79535-47bb-0310-9956-ffa450edef68
2011-02-12 15:52:17 +00:00
b8769181a3 Enable authn_cache in the main easy-to-do authn provider modules
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@957072 13f79535-47bb-0310-9956-ffa450edef68
2010-06-22 23:03:11 +00:00
ebb62867fb Use the new APLOG_USE_MODULE/AP_DECLARE_MODULE macros everywhere to take
advantage of per-module loglevels


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@951895 13f79535-47bb-0310-9956-ffa450edef68
2010-06-06 16:59:50 +00:00
bb7398fce0 revert r672639 which lacked a necessary major bump, add a major MMN bump
to account for the short-lived API addition/removal.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@678947 13f79535-47bb-0310-9956-ffa450edef68
2008-07-22 23:49:51 +00:00
bbc850ee33 mod_auth_digest: Detect during startup when AuthDigestProvider
is configured to use an incompatible provider via AuthnProviderAlias.
PR 45196 



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@672639 13f79535-47bb-0310-9956-ffa450edef68
2008-06-29 16:42:43 +00:00
9864958fcd Convert common provider version strings ("0") to
AUTHN/Z_PROVIDER_VERSION macros defined in mod_auth.h.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@658046 13f79535-47bb-0310-9956-ffa450edef68
2008-05-19 23:53:05 +00:00
c8ba67fb83 Avoid calling access control hooks for internal requests with
configurations which match those of the initial request.  Revert to
the original behaviour (call access control hooks for internal requests
with URIs different from the initial request) if any access control hooks
or providers are not registered as permitting this optimization.
Introduce wrappers for access control hook and provider registration
which can accept additional mode and flag data.

The configuration walk optimizations were originally proposed a while
ago (see http://marc.info/?l=apache-httpd-dev&m=116536713506234&w=2);
they have been used since then in production systems and appear to be
stable and effective.  They permit certain combinations of modules
and clients to function efficiently, especially when a deeply recursive
series of internal requests, such as those generated by certain WebDAV
requests, are all subject to the identical authentication and authorization
directives.

The major change from the original proposal is a cleaner mechanism for
detecting modules which may expect the old behaviour.  This has been
tested successfully with Subversion's mod_authz_svn, which specifically
requires the old behaviour when performing path-based authorization based
against its own private access control configuration files.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@644525 13f79535-47bb-0310-9956-ffa450edef68
2008-04-03 21:51:07 +00:00
de659cbed0 update license header text
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@420983 13f79535-47bb-0310-9956-ffa450edef68
2006-07-11 20:33:53 +00:00
dd95d7c37c Update the copyright year in all .c, .h and .xml files
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@395228 13f79535-47bb-0310-9956-ffa450edef68
2006-04-19 12:11:27 +00:00
905cdf9f0b Update copyright year to 2005 and standardize on current copyright owner line.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@151408 13f79535-47bb-0310-9956-ffa450edef68
2005-02-04 20:28:49 +00:00
a688f06b19 fix name of The Apache Software Foundation
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102618 13f79535-47bb-0310-9956-ffa450edef68
2004-02-09 20:31:03 +00:00
1afeb99711 fix copyright dates according to the first check in
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102550 13f79535-47bb-0310-9956-ffa450edef68
2004-02-07 19:38:27 +00:00
4f02cb1e18 apply Apache License, Version 2.0
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102525 13f79535-47bb-0310-9956-ffa450edef68
2004-02-06 22:58:42 +00:00
fb07607180 update license to 2004.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@102135 13f79535-47bb-0310-9956-ffa450edef68
2004-01-01 13:26:26 +00:00
742af25096 finished that boring job:
update license to 2003.

Happy New Year! ;-))


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@98573 13f79535-47bb-0310-9956-ffa450edef68
2003-02-03 17:53:28 +00:00
1efa9fe703 Per Greg's request, add a version string component to the ap_provider.h
functions.  This allows modules to register different versions of the
same provider.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@97696 13f79535-47bb-0310-9956-ffa450edef68
2002-11-30 18:48:41 +00:00
f979a343af Add missing includes in mod_authn_file and mod_authn_dbm.
Submitted by:	Sebastian Bergmann <lists@sebastian-bergmann.de>
Reviewed by:	Justin Erenkrantz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96926 13f79535-47bb-0310-9956-ffa450edef68
2002-09-20 06:14:31 +00:00
7efe307731 Add ap_register_provider and ap_lookup_provider functions which resolve
the DSO link problems for DAV and the new aaa modules by moving the
provider code into the core of the server and generalizing them to be
used by any code.

Remove the auth{nz}_*_provider functions as they are no longer needed.

Change the dav_*_provider functions to wrap the ap_*_provider functions
as they have a bit more of a historical precedent that we should keep
around.

Reviewed by:	John K. Sterling <john@sterls.com> (in concept)


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96919 13f79535-47bb-0310-9956-ffa450edef68
2002-09-20 00:57:50 +00:00
fbf9567e13 Remove Authoritative functionality from the authn providers.
All ordering semantics should be resolved by the modules which use these
providers, not the providers themselves.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96868 13f79535-47bb-0310-9956-ffa450edef68
2002-09-18 00:33:13 +00:00
20202e5cdc Stage #2 of aaa rewrite: Add provider support so that mod_authn_* modules
do not have to re-implement basic auth and to allow mod_auth_digest (and
other modules) to leverage the authn backends.

Adds AuthBasicProvider and AuthDigestProvider directives.

This also moves a lot of the basic auth handling code inside of mod_auth_basic
(but does not remove the code in server/protocol.c - that will have to wait
for a version bump so that we don't totally bust old modules).

This patch incorporates code review comments by Greg Stein.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96739 13f79535-47bb-0310-9956-ffa450edef68
2002-09-10 06:57:03 +00:00
9cdc0f0ce9 Stage #1 of the aaa rewrite - refactoring modules.
All modules are reorganized under the following scheme:
- mod_auth_*:   Front-end (basic, digest)
- mod_authn_*:  Authentication (anon, dbm, default, file)
- mod_authz_*:  Authorization (dbm, default, groupfile, host, user)

This passes the httpd-test suite when it accounts for the renaming of
aaa modules.

Originally written by: Dirk-Willem van Gulik
Completed by: Justin Erenkrantz


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96728 13f79535-47bb-0310-9956-ffa450edef68
2002-09-10 00:15:39 +00:00