We're using an apache 2.4 servers with client certificates to serve http-based services within our organization. Most importantly we call fossil cgi to serve repositories on such a server.
The client certificates are used to assign access permissions to repository categories by using <Files>, SSLRequire and fossil's ability to serve entire directories. I.e.:
<Files internal>
SSLRequire %{SSL_CLIENT_S_DN_OU} eq "Owner" \
and %{SSL_CLIENT_S_DN_CN} in {"foo", "bar"}
</Files>
<Files sys>
SSLRequire %{SSL_CLIENT_S_DN_OU} eq "Admins" \
and %{SSL_CLIENT_S_DN_CN} in {"foo", "frank"}
</Files>
This works well, but I've started to realize that as we're growing and some people gain wider range of responsibilities this is somewhat cumbersome. Most importantly it's a pain to have to edit the apache config files and restart apache each time permissions are updated.
What mechanisms are there to update apache configurations dynamically? (Specifically SSL rules). Is this something that one could solve using the Lua module and a simple sqlite database for containing the access lists? Is a custom written "Authorization Provider" the proper tool for this job?
Include) automatically from something else, even including from cron. – Patrick Mevzek Jan 03 '18 at 15:48