Wie kann ich die E-Mail-Adresse eines Trac-Benutzers entfernen?


7

Wir haben einige Benutzer, die das Unternehmen verlassen haben, und wir haben ihre E-Mail-Adresse gesperrt, aber trac sendet weiterhin Benachrichtigungen an diese Adressen. Wie kann ich die E-Mail-Adresse aus ihrem Trac-Profil entfernen?

Antworten:


7

Keine Plugins erforderlich, wenn Sie mit der Befehlszeile vertraut sind. TracAdmin ist dein Freund.

Listen Sie den Namen und die E-Mail-Adresse für die angegebenen Seiten (Benutzername) auf:

trac-admin /usr/local/share/trac/test session list

SID      Auth  Last Visit  Name            Email            
------------------------------------------------------------
bob      1     1970-01-01  Bob Smith       bob@bob.com

Wo /usr/local/share/trac/testist der Weg zu Ihrem Projekt?

Senden Sie jetzt einfach die leere Zeichenfolge, um die E-Mail-Adresse zu löschen:

trac-admin /usr/local/share/trac/test session set email bob ""

Überprüfen Sie, ob es funktioniert hat:

trac-admin /usr/local/share/trac/test session list

SID      Auth  Last Visit  Name            Email            
------------------------------------------------------------
bob      1     1970-01-01  Bob Smith                        

Müssen Sie es auf etwas anderes einstellen? Kein Problem:

trac-admin /usr/local/share/trac/test session set email bob "bob@bob.com"

trac-admin /usr/local/share/trac/test session list

SID      Auth  Last Visit  Name            Email            
------------------------------------------------------------
bob      1     1970-01-01  Bob Smith       bob@bob.com 

3

Sie können in die Datenbank gehen und den Datensatz aktualisieren:

 DELETE FROM session_attribute WHERE name = 'email' AND value = 'email@example.com';

Wenn Sie sqlite verwenden, ist dies etwa "sqlite3 trac.db", wobei sich trac.db irgendwo in Ihrem trac-Verzeichnis befindet.

Darüber hinaus gibt es in trac.ini Einstellungen für das automatische Versenden von Änderungen und Tickets per E-Mail.

always_notify_owner = true
always_notify_reporter = true
always_notify_updater = true

Wenn sich die Person noch als eine dieser drei Personen auf Tickets befindet, erhält sie weiterhin E-Mails, wenn der Trac-Benutzername der erste Teil ihrer E-Mail-Adresse ist und die Einstellung "smtp_default_domain" mit dem Domain-Teil übereinstimmt.


Ich sehe die trac.db, aber sqlite3 ist keine ausführbare Datei - ich habe nur eine sqlite3.dll. Wie führe ich die Abfrage aus?
g.

1
Laden Sie den Windows-Client unter sqlite.org/download.html herunter
Gavin M. Roy

2

Ein anderer Ansatz, den ich gefunden habe, ist die Verwendung des UserManagerPlugin . Das "User Session Management" bietet die Funktionalität, alte Benutzer aus dem System zu entfernen.

Nach der Installation des Plugins

  1. Wählen Sie Admin -> Benutzer -> Sitzungsverwaltung
  2. Aktivieren Sie die Kontrollkästchen der zu entfernenden Benutzer und klicken Sie auf "Ausgewählte löschen".
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.