【问题标题】:How to use Form based LDAP authentication in apache如何在 apache 中使用基于表单的 LDAP 身份验证
【发布时间】:2019-03-18 23:38:18
【问题描述】:

能否请您告诉我如何在 LDAP 身份验证中使用 FORM,而不是 apache 提供的默认登录弹出窗口。

以下是 apache 配置,当我访问网页时,我正在获取登录页面,但在提供用户名、密码后,我没有被重定向到请求的页面,而是再次出现登录页面(我已经检查了 ldap 凭据在默认页面,它可以正常工作,所以 ldap 没有问题)

<Location />
   # SetHandler form-login-handler
    AuthName example
    AuthFormProvider ldap
    AuthType form
    AuthFormLoginRequiredLocation http://localhost/login.html
    AuthBasicProvider ldap
    AuthLDAPURL ldap://localhost/dc=linuxbabe,dc=com?uid?sub?(objectClass=*)
   # Require ldap-filter objectClass=posixAccount
    Require valid-user
</Location>


   <Location "/login.html">
        Order allow,Deny
        Allow from all
        require all granted
    </Location>



    <Location /dologin.html>
      SetHandler form-login-handler
      AuthType form
      AuthName example
      AuthFormProvider ldap
      AuthFormLoginRequiredLocation http://localhost/login.html
    </Location>


<html>
<head><title>Test Login</title></head>
<body>

<form method="POST"  action="/dologin.html">
    Username: <input type="text" name="httpd_username" value="" />
    Password: <input type="password" name="httpd_password" value="" />
    <input type="submit" name="login" value="Login" />
    <input type="hidden" name="httpd_location"
value="http://localhost/index.html" />
</form>

</body>
</html>

【问题讨论】:

    标签: apache openldap


    【解决方案1】:

    mod_auth_form 的文档一开始就说:

    表单认证依赖于 mod_session 模块

    因此您必须选择并配置mod_session 模块之一。

    【讨论】:

    • 感谢 michael 的回复,现在我的登录页面可以使用 ldap 进行身份验证,但身份验证后我只能使用输入“httpd_location”(localhost/app/home.html" />) 在 login.html 页面中,有没有办法重定向到用户请求的 url ??
    • 抱歉,我不知道该怎么做。特别是这需要重定向到用户输入中提供的 URL。在生成重定向位置 URL 时,您可能不想信任该输入。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-06
    • 1970-01-01
    • 1970-01-01
    • 2018-04-11
    • 1970-01-01
    • 1970-01-01
    • 2014-12-13
    相关资源
    最近更新 更多