Я пытаюсь настроить apache для аутентификации сначала с помощью двухстороннего SSL-подтверждения, а затем mod_auth_kerberos, в котором все работает нормально .. backend is freeIPA.apache two way ssl auth with kerberos
однако я хочу, чтобы ограничить пользователь SSL_CLIENT_S_DN_CN и не проверить подлинность любого другого пользователя действительного кербероса
это является VirtualHost конфига,
LoadModule auth_kerb_module modules/mod_auth_kerb.so
LoadModule dumpio_module modules/mod_dumpio.so
LoadModule ssl_module modules/mod_ssl.so
Listen 443
<VirtualHost *:443>
ServerAdmin web01.server.hostingprovider.com
DocumentRoot "/var/www/html"
ServerName myserver.name
SSLEngine on
SSLCipherSuite RC4-SHA:AES128-SHA:HIGH:!aNULL:!MD5
SSLHonorCipherOrder on
SSLCertificateFile /etc/httpd/ssl/server-cert.pem
SSLCertificateKeyFile /etc/httpd/ssl/private/server-key.pem
SSLVerifyClient require
SSLVerifyDepth 1
SSLCACertificateFile /etc/httpd/ssl/cacert.pem
LogLevel debug
DumpIOInput On
DumpIOOutput On
ScriptAlias /application /var/www/app.cgi
ErrorLog "logs/app01-error.log"
CustomLog "logs/app01-access_log" common
<Location />
SSLUserName SSL_CLIENT_S_DN_CN
AuthType Kerberos
AuthName "Kerberos Login"
KrbMethodNegotiate On
KrbMethodK5Passwd On
KrbAuthRealms MYREALM.COM
Krb5KeyTab /etc/security/keytabs/spnego.service.keytab
require valid-user
</Location>
</VirtualHost>
Я попытался это с SSLRequire и это прекрасно работает пользователь «krisdigitx», но он также позволяет другим пользователям kerberos проходить аутентификацию с тем же сертификатом.
SSLRequire (%{SSL_CLIENT_S_DN_CN} eq "krisdigitx")
- Как я могу создать БД т.е.
SSLRequire (% {SSL_CLIENT_S_DN_CN} эк "из некоторой БД")
должен соответствовать пользователю в БД, а затем разрешить доступ ?
- Как я могу подтвердить пользователя на первом шаге и разрешить только его передачу для проверки подлинности Kerberos?
благодарит @frasertweedale за входные данные ... что помогает. – krisdigitx