Page MenuHomePhorge: Wikonia

Anpassung der Datenbank-Benutzerrechte für Shared-Tables
Proudly completedPublictask

Description

Dieses Ticket fokussiert auf die konkrete Zuweisung der Lese-Berechtigungen in der Haupt-Wiki-Datenbank für den Wikibase-Datenbankbenutzer.

Was getan werden muss

Der dedizierte Datenbankbenutzer der Wikibase-Instanz (z.B. wikibase_user) muss spezifische SELECT-Rechte auf der Haupt-Wiki-Datenbank (z.B. main_wiki_db) erhalten, um auf die in T[Vorherige Ticketnummer] spezifizierten Tabellen zugreifen zu können.

  1. Identifikation des Wikibase-DB-Benutzers: Der Benutzer, der für die Verbindung der Wikibase-Instanz zur Datenbank verwendet wird, muss identifiziert werden.
  2. SQL-Statement zur Rechtevergabe: Es muss ein SQL-Statement erstellt und ausgeführt werden, das dem Wikibase-Benutzer ausschließlich das Recht SELECT auf die in der Spezifikation gelisteten Tabellen der Haupt-Wiki-Datenbank gewährt (z.B. user, user_groups, global_user_groups, interwiki, abuse_filter etc.).
  3. Keine Schreib-/Änderungsrechte: Es muss sichergestellt werden, dass der wikibase_user keine INSERT, UPDATE oder DELETE Rechte auf der Haupt-Wiki-Datenbank besitzt, um die Sicherheit und Datenintegrität zu gewährleisten. Die Wikibase-Instanz darf diese Tabellen nur lesen.
  4. Verifikation: Die erteilten Rechte müssen durch einen Test verifiziert werden, der sicherstellt, dass der Wikibase-DB-Benutzer die benötigten Daten lesen kann, jedoch keine Schreiboperationen auf der Haupt-Wiki-Datenbank zulässig sind.

Warum wir das tun

Die sichere Konfiguration der Datenbankrechte ist die Voraussetzung für die gesamte Shared-Tables-Architektur.

  • Funktionsweise der Shared-Tables: Die Wikibase-Instanz benötigt Lesezugriff auf die zentralen Tabellen des Haupt-Wikis, um die Benutzerdaten (SSO) und die zentralen Features (Rechte, Watchlist, Filter) abzurufen und zu synchronisieren.
  • Sicherheit durch minimale Privilegien: Durch die strikte Zuweisung nur von SELECT-Rechten wird das Prinzip der minimalen Privilegien (Least Privilege) umgesetzt. Dies verhindert, dass ein kompromittierter Wikibase-Server die Benutzerdaten oder kritische Konfigurationen des Haupt-Wikis manipuliert.
  • Trennung der Verantwortlichkeiten: Die Trennung der Lese- und Schreibrechte zwischen den Instanzen gewährleistet, dass die Haupt-Wiki-Datenbank die *Master*-Quelle für die gemeinsam genutzten Daten bleibt.

Details

Schwierigkeitsgrad
Intermediate

Event Timeline

muke86 changed the task status from To Do to Review.Mon, Oct 27, 7:07 AM

Ist soweit erledigt, muss beobachtet werden, ob noch weitere Tabellen benötigt werden.