我有一个 apache 2.4 服务器,为本地网络用户提供 Kerberos 身份验证。现在我需要允许公众在没有身份验证的情况下访问它,但仍然需要本地网络的身份验证。
如果我只是删除“需要有效用户”指令,则本地用户不会进行身份验证。
如果我允许一个公共 IP,一切都会完美运行,本地用户将获得身份验证,来自该 IP 的远程用户将获得访问权限:
<RequireAny>
Require ip 11.22.33.44
Require valid-user
</RequireAny>
Run Code Online (Sandbox Code Playgroud)
但如果尝试允许除 locallet 之外的所有人:
<RequireAny>
Require ip not 192.168
Require valid-user
</RequireAny>
Run Code Online (Sandbox Code Playgroud)
然后我得到“语法错误:负 Require 指令对指令没有影响”
如果我将排除嵌入到 RequireAll 中:
<RequireAny>
<RequireAll>
Require ip not 192.168
<RequireAll>
Require valid-user
</RequireAny>
Run Code Online (Sandbox Code Playgroud)
然后我收到错误“RequireAll 指令仅包含否定授权指令”。
同样,添加
<RequireAny>
<RequireNone>
Require ip 192.168
<RequireNone>
Require valid-user
</RequireAny>
Run Code Online (Sandbox Code Playgroud)
给出错误“RequireNone 指令对指令没有影响”。
那么这样的排除应该如何进行呢?
apache-2.4 ×1