Eine einfache Lösung, wenn sich die DB nicht sekündlich ändert:
Generiere per Script periodisch (z.B. alle 5 Minuten) aus der DB eine
.htaccess...
Ansonsten bleibt Dir nur, einen eigenen Auth Provider zu schreiben, wie
Sven schon gesagt hat. Aber ob das so "fix" geht...? Für Sven vielleicht :-)
Gruß
Olli
Am 10.02.23 um 09:04 schrieb Sven Velt:
> Moin!
>
> On 09.02.23 18:48, Norman Zimmer wrote:
>> hat jemand einen Plan, wie ich in der Apache-Auth nach IP-Adressen
>> überprüfen die in einer Datenbank?
>> Auch ein paar Suchbegriffe für Google würden mir im Moment
>> weiterhelfen. Im Moment bin ich im Status "Jugend Forscht" ;)
> Dann geh' mal über in "Jugend programmiert" 😜
>
>> Freilich kann ich die IP-Adressen mit "require ip 8.8.8.8" in die Config
>> schreiben, das wäre aber statisch in einem Textfile.
>> Ich hätte das gerne in einer Datenbank.
>>
>> Für Gruppen gibt es das schon:
>> Require dbd-group allowedteam
>> AuthzDBDQuery "SELECT group FROM authz WHERE user = %s"
>>
>> Für IP-Adressen könnte ich das so ungefähr umbauen.
>> Require dbd-group allowedip
>> AuthzDBDQuery "SELECT 'allowedip' FROM authz WHERE ip-address = %s"
>>
>> Aber wie wird der Übergabewert von "%s" definiert?
>
> Was als "%s" übergeben wird ist ja durch die Direktiven vorgegeben,
> eben mal der User-, mal der Gruppen-Name. Da kannst Du nix einstellen
> oder anpassen.
>
> Mir ist kein (internes oder externes) Auth-Module bekannt, welches die
> IP gegen eine DB checken würde. Sprich: Send Pull-Requests 😬
>
> Effektiv könnte man das vermutlich einigermaßen fix in Lua
> zusammenstöpseln, siehe auch
> https://httpd.apache.org/docs/2.4/mod/mod_lua.html#luaauthzprovider
>
> Weiterhin gibt's unter
> https://httpd.apache.org/docs/2.4/mod/mod_lua.html#writingauthzproviders
> das Beispiel, wie Du an die IP kommst und so ein Authz-Provider in Lua
> aussieht.
>
> Last but not least: Zugriff per SQL →
> https://httpd.apache.org/docs/2.4/mod/mod_lua.html#databases
>
> Aktuell hab ich aber keinen Kopf das mal hinzudengeln, sorry!
>
> Bye
>
> Sven
>
--
Mailing-Liste der Linux User Schwabach (LUSC) e.V.
Vor und beim Posten bitte
=> http://lusc.de/List-Netiquette <= und
=> http://lusc.de/List-Howto <= beachten. Danke!