描述: | 使用MD5摘要认证的用户认证 |
---|---|
状态: | 延期 |
模块标识符: | auth_digest_module |
源文件: | mod_auth_digest.c |
此模块实现HTTP摘要验证(RFC2617),并提供了一种替代方式,mod_auth_basic
其中密码不作为明文发送。但是,这并
不会导致显著安全性优于基本身份验证。另一方面,摘要身份验证比基本身份验证在服务器上存储密码的安全性要差得多。因此,使用基本身份验证并使用加密整个连接mod_ssl
是一个更好的选择。
要使用MD5摘要式身份验证,请按照以下示例所示配置要保护的位置:
<Location "/private/"> AuthType Digest AuthName "private area" AuthDigestDomain "/private/" "http://mirror.my.dom/private2/" AuthDigestProvider file AuthUserFile "/web/auth/.digest_pw" Require valid-user </Location>
AuthDigestDomain
应该列出受此配置保护的位置。
AuthUserFile
指令中引用的密码文件可以使用该htdigest
工具创建和管理。
摘要式身份验证原本比基本身份验证更安全,但不再满足该设计目标。中间人攻击者可以轻易迫使浏览器降级为基本身份验证。甚至是被动的窃听者也可以使用当今的图形硬件来强行破解密码,因为摘要身份验证使用的哈希算法太快了。另一个问题是服务器上密码的存储不安全。可以将被盗的htdigest文件的内容直接用于摘要身份验证。因此mod_ssl
,强烈建议使用加密整个连接。
mod_auth_digest
仅在APR支持共享内存的平台上正常工作。
描述: | 选择用于在摘要身份验证中计算质询和响应哈希值的算法 |
---|---|
句法: | AuthDigestAlgorithm MD5|MD5-sess |
默认: | AuthDigestAlgorithm MD5 |
内容: | 目录.htaccess |
覆写: | 验证配置 |
状态: | 延期 |
模块: | mod_auth_digest |
该AuthDigestAlgorithm
指令选择用于计算质询和响应哈希值的算法。
MD5-sess
尚未正确实施。
描述: | 处于摘要保护身份验证的相同保护空间中的URI |
---|---|
句法: | AuthDigestDomain URI [URI] ... |
内容: | 目录.htaccess |
覆写: | 验证配置 |
状态: | 延期 |
模块: | mod_auth_digest |
该AuthDigestDomain
指令允许您指定一个或多个位于相同保护空间中的URI(即,使用相同的领域和用户名/密码信息)。指定的URI是前缀;客户端将假定所有“以下” URI也受相同的用户名/密码保护。URI可以是绝对URI(即
包括方案,主机,端口等),也可以是相对URI。
应该始终指定此伪指令,并且至少包含此空间的(一组)根URI。忽略此操作将导致客户端为发送到此服务器的每个请求发送授权标头。
指定的URI也可以指向不同的服务器,在这种情况下,客户端(理解这一点)将在多个服务器之间共享用户名/密码信息,而无需每次都提示用户。
描述: | 服务器随机数有效时间 |
---|---|
句法: | AuthDigestNonceLifetime seconds |
默认: | AuthDigestNonceLifetime 300 |
内容: | 目录.htaccess |
覆写: | 验证配置 |
状态: | 延期 |
模块: | mod_auth_digest |
该AuthDigestNonceLifetime
指令控制服务器随机数有效的时间。当客户端使用过期的随机数联系服务器时,服务器将通过发送回401 stale=true
。如果秒数大于0,则它指定随机数有效的时间;可能永远不应将其设置为少于10秒。如果秒小于0,则随机数永不过期。
描述: | 设置此位置的身份验证提供程序 |
---|---|
句法: | AuthDigestProvider provider-name
[provider-name] ... |
默认: | AuthDigestProvider file |
内容: | 目录.htaccess |
覆写: | 验证配置 |
状态: | 延期 |
模块: | mod_auth_digest |
该AuthDigestProvider
指令设置使用哪个提供程序来认证此位置的用户。默认file
提供程序由mod_authn_file
模块实现。确保服务器中存在所选的提供程序模块。
有关
提供商,
请参见mod_authn_dbm
,和。mod_authn_file
mod_authn_dbd
mod_authn_socache
描述: | 确定摘要认证中使用的保护质量 |
---|---|
句法: | AuthDigestQop none|auth|auth-int [auth|auth-int] |
默认: | AuthDigestQop auth |
内容: | 目录.htaccess |
覆写: | 验证配置 |
状态: | 延期 |
模块: | mod_auth_digest |
该AuthDigestQop
指令确定要使用的保护质量。auth
只做身份验证(用户名/密码);auth-int
是身份验证和完整性检查(还会计算和检查实体的MD5哈希值);none
将导致该模块使用旧的RFC-2069摘要算法(不包括完整性检查)。双方auth
并auth-int
可以规定,在这种情况下,浏览器将选择要使用的这些。none
仅应在浏览器由于某种原因不喜欢它收到的挑战时使用。
auth-int
尚未实施。
描述: | 为跟踪客户端而分配的共享内存量 |
---|---|
句法: | AuthDigestShmemSize size |
默认: | AuthDigestShmemSize 1000 |
内容: | 服务器配置 |
状态: | 延期 |
模块: | mod_auth_digest |
该AuthDigestShmemSize
指令定义了共享内存的数量,该数量将在服务器启动时分配以跟踪客户端。请注意,共享内存段的设置不能小于跟踪至少一个客户端所需的空间。此值取决于您的系统。如果要找出确切的值,可以将其设置AuthDigestShmemSize
为的值,
0
然后在尝试启动服务器后阅读错误消息。
该大小是以字节为单位正常表达,但您可以按照与数K
或M
表达自己的价值KB或MB。例如,以下指令均等效:
AuthDigestShmemSize 1048576 AuthDigestShmemSize 1024K AuthDigestShmemSize 1M