0

我正在尝试使用 mod_sspi_auth 模块实现 Windows 身份验证。在配置 apache 2.2 的 httpd.conf 之后,我能够实现这个模块的基本实现。我应用的配置是位置标签,

AuthName "Windows Authentication Test" 
AuthType SSPI
SSPIAuth On
SSPIAuthoritative Off
SSPIDomain test.domain.com
SSPIOfferBasic On
SSPIOmitDomain Off
SSPIUsernameCase lower
Require valid-user      

并且它在一个问题上正常工作。当我尝试从我的域中不存在的机器访问我的网站时,该机器正在通过我的应用程序服务器机器进行身份验证。这不是预期的。:使困惑:

现在我想验证我在 windows server 2008 AD 中创建的用户组。我在这个组中添加了一些用户,并且使用 apache 的 Require 组指令我尝试使用具有多个组合的“Require Group”指令。但我仍然坚持不验证组用户的问题。组组合的 httpd.conf 位置标签中的配置是

AuthName "Windows Authentication Test" 
AuthType SSPI
SSPIAuth On
SSPIAuthoritative Off
SSPIDomain test.domain.com
SSPIOfferBasic On
SSPIOmitDomain Off
SSPIUsernameCase lower
Require group test.domain.com\mygroup

我已经尝试使用 Require 指令的其他组合如下。1. 需要组 "test.domain.com\mygroup" 2. 需要组 mygroup 3. 需要组 "mygroup" 4. 需要组 "CN=abc,DC=test.domain.com" 5. 需要组 CN=abc, DC=test.domain.com

谁可以帮我这个事..?????

4

3 回答 3

0

尝试使用 LocationMatch 进行组限制。我的实例使用 2 部分配置工作,看起来像这样。

<Location />
    AuthName "Windows Authentication Test" 
    AuthType SSPI
    SSPIAuth On
    SSPIAuthoritative Off
    SSPIDomain test.domain.com
    SSPIOfferBasic On
    SSPIOmitDomain Off
    SSPIUsernameCase lower
    Require valid-user  
</Location>

对于组限制,我使用这个:

<LocationMatch "/">
  Require group test.domain.com\mygroup
</LocationMatch>

关于您的困惑,使用 AD 凭据登录到加入域的计算机的用户将使用 IE 或其他支持 NTLM 的浏览器自动进行身份验证。但是对于没有加入域的机器,或者域机器上的非AD用户会被提示进行认证。

于 2012-08-06T15:14:22.897 回答
0

该模块也有使用以下指令的版本。

Require valid-sspi-user
Require sspi-user DOMAIN\user1 DOMAIN\user2
Require sspi-group DOMAIN\group
于 2014-07-17T14:44:39.027 回答
0

需要 sspi 组 DOMAIN\group_name

仅当您使用 AD/LDAP 中的 sAMAccountName而不是 cn 名称时,上述指令才有效。

很多时候,他们两个是相同的,但并非总是如此。

cn 只是可见名称,例如“ very_important_ad_group”,但 sAMAccountName 可能类似于 $ABCDEF-KOWI32OOK1LV 或其他任何名称,您需要 apache config 中的 sAMAccountName

于 2021-01-31T13:43:45.537 回答