1

我想通过 Active Directory 建立一个具有 SSO 身份验证的 Intranet。我搜索了一下,发现可能有两种方法:

  1. 使用 apache 模块mod_authnz_sspi。我可以获得用户名和域,但似乎没有身份验证。也许我真的不明白...

    这是这个模块的我的apache conf:

     
        AuthType SSPI
        SSPIAuth 开启
        SSPIAuthoritative On
        SSPIOffer基本开
        SSPIOmitDomain 关闭
        SSPIDomain MyDOMAIN
        需要有效用户
    
    

    所以我猜“连接”并不是很安全......

  2. 使用 apache 模块mod_authnz_ldap但我无法使其正常工作......

    这是这个模块的我的apache conf:

     
       
       AuthName "LDAP 身份验证"
       AuthType 基本
       AuthBasicProvider ldap
       AuthLDAPBindAuthoritative 关闭
       AuthLDAPURL "ldap://ad.server.fr:389/DC=server,DC=local?sAMAccountName?sub?(objectClass=person)" 无
       AuthLDAPBindDN ldap@server.local
       AuthLDAPBindPassword 密码
       AuthLDAPRemoteUserAttribute 开启
       LDAPReferrals 关闭
    
    

    我收到此错误LDAP: SSL support unavailable: LDAP: CA certificates cannot be set using this method, as they are stored in the registry instead.,但我不想使用 SSL 进行连接...

    其实我真的不明白这是如何工作的。我的活动目录没有从我的 apache 获得连接,或者可能只是匿名的。

现在我不知道如何在我的 Intranet 上进行 SSO 身份验证。哪种方式更好?还有一个吗?

我将 wamp(用于 windows)与 apache 2.4.4 一起使用。

4

1 回答 1

1

我在 windows xp 上使用 apache 2.4.4 和 mod_authnz_sspi,以下适用于使用 IE8 的人。但我没有使用 PHP。使用 Django。

<Location "/k/">
    AuthName "Something"
    AuthType SSPI
    SSPIAuth On
    SSPIAuthoritative On
    SSPIDomain "COMPANY"
    SSPIUsernameCase "upper" 
    require valid-user
    SSPIPerRequestAuth Off
    require user "NT AUTHORITY\ANONYMOUS LOGON" denied
</Location>
于 2013-10-09T01:46:23.837 回答