Nuestro sitio se ejecuta en apache y está protegido mediante certificados de cliente. Hasta ahora, solo había un certificado que proporcionaría acceso a todo el sitio. Ahora, tenemos el requisito de exponer a jira a un nuevo grupo de usuarios que no deberían poder acceder a nada más que jira. Creé un certificado separado para ese grupo y planeé distinguirlos usando la combinación SSLRequire y Location/LocationMatch.Uso de la negación en la directiva LocationMatch
lo tanto, el criterio es:
- Los usuarios con certificado anterior puede acceso al sitio completo
- Los usuarios con nuevo certificado sólo se puede acceder/jira patrón de URL
Probé unos pocos combinación, pero no capaz de obtener la negación para el trabajo de LocationMatch. Cualquier ayuda sería apreciada.
El archivo httpd.conf, se parece a esto:
SSLVerifyClient require
SSLVerifyDepth 1
SSLCACertificateFile /etc/apache2/ssl/myca.crt
<Location /jira>
SSLRequire %{SSL_CLIENT_S_DN_CN} in {"AllUsers", "JiraUsers"}
</Location>
<LocationMatch /!(jira)>
SSLRequire %{SSL_CLIENT_S_DN_CN} eq "AllUsers"
</LocationMatch>
/[^ s] [^ t ] [^ a] [^ t] [^ i] [^ c]/solo coincidirá con ubicaciones de 6 caracteres de longitud. –