Ein Ausflug in die Privacy Gruppen und die Kontakt-Rollen

Jetzt werdet ihr euch (und uns) fragen: “Was sind Privacy-Gruppen eigentlich?”

Wenn ihr von Mastodon kommt: Da gibt es etwas, das so ähnlich ist, und zwar Listen. Da könnt ihr Konten eintragen und damit eure Timeline filtern. Allerdings funktionieren Privacy-Gruppen auf Hubzilla etwas anders, und sie können einiges mehr; der Wortbestandteil “Privacy” deutet es ja schon an.

Der erste Unterschied ist: In eine Mastodon-Liste könnt ihr alle möglichen Fediverse-Akteure eintragen, egal, ob ihr denen folgt oder die euch oder beides oder nicht. In eine Privacy-Gruppe auf Hubzilla könnt ihr nur diejenigen eintragen, die ihr schon an Kontakten habt.

Der zweite Unterschied ist: Dafür geht das sehr viel einfacher. Auf Mastodon habt ihr ein Textfeld zum Suchen von Akteuren. Wenn ihr jemanden zu einer Liste hinzufügen wollt, müsst ihr ein paar Zeichen des Namens in diesem Textfeld eintippen, dann bekommt ihr einige Akteure angezeigt. Daraus müsst ihr den gesuchten Akteur aussuchen und den dann hinzufügen. Für den nächsten fängt alles noch einmal von vorne an.

Auf Hubzilla habt ihr für jede Privacy-Gruppe einen Editor mit zwei Spalten wie auf Facebook. Immerhin ist Hubzilla ein Fork eines Forks von Friendica, und Friendica ist damals als Alternative zu Facebook angetreten. Die linke dieser Spalte enthält alle eure Kontakte, die nicht in der Privacy-Gruppe sind, die rechte diejenigen, die in der Privacy-Gruppe sind. Wenn ihr einen Kontakt links anklickt, wechselt er nach rechts, also in die Privacy-Gruppe. Klickt ihr rechts einen an, wechselt er nach links, also aus der Privacy-Gruppe raus.

pg-zufuegen

Das heißt auch: Wie auf Mastodon seht ihr, wer schon in der Privacy-Gruppe drin ist. Im Gegensatz zu Mastodon seht ihr aber auch, wer von euren Kontakten nicht drin ist.

Dazu habt ihr sogar noch eine zweite Möglichkeit, Kontakte zu Privacy-Gruppen hinzuzufügen. Und zwar könnt ihr bestimmte Kontakte auch direkt in Privacy-Gruppen einstellen oder wieder rausnehmen. Auf Hubzilla habt ihr nämlich in der Verbindungsverwaltung die Möglichkeit, jeden einzelnen eurer Kontakte vielfältig zu konfigurieren. So habt ihr bei jedem Kontakt eine Liste eurer Privacy-Gruppen und neben jeder Privacy-Gruppe jeweils einen einfachen An/Aus-Schalter. Damit könnt ihr die Zugehörigkeit des jeweiligen Kontakts zu jeder eurer Privacy-Gruppen einfach an- und ausschalten.

pg-verbindungs-ed

Ihr könnt sogar bei Verbindungsanfragen den anfragenden Akteur in Privacy-Gruppen tun, bevor ihr die Verbindung bestätigt. Wenn ihr die Verbindung dann bestätigt, ist euer neuer Kontakt schon in den richtigen Privacy-Gruppen.

pg-verbindungsed2

Besser noch: Ihr könnt in jeder einzelnen Privacy-Gruppe einstellen, ob neue Kontakte ihr automatisch zugeordnet werden oder nicht. Wenn ihr also eine oder mehrere Privacy-Gruppen habt, wo ihr eh fast oder tatsächlich jeden reintut, dann könnt ihr das aktivieren, dann müsst ihr neue Kontakte nicht jedes Mal per Hand in die Privacy-Gruppe tun. Natürlich habt ihr dann immer noch die Option, neue Kontakte aus der Privacy-Gruppe rauszuhalten, was dann wahrscheinlich unterm Strich weniger Arbeit ist.

pg-autozuweisung

Der dritte Unterschied ist: Mit Hubzillas Privacy-Gruppen könnt ihr nicht nur euren Stream filtern. Ihr könnt auch neue Posts gezielt an eine oder mehrere Privacy-Gruppen schicken; daher das “Privacy”.

pg-posting

Ein brandneuer Hubzilla-Kanal mit der Kanalrolle “Persönlich” tut übrigens mit Standardeinstellungen genau das. Es gibt auf neuen Hubzilla-Kanälen generell nur genau eine Privacy-Gruppe namens “Freunde”, die nicht konfigurierbar ist. Die enthält automatisch alle eure Kontakte. Und standardmäßig schickt Hubzilla bei der Kanalrolle “Persönlich” Posts nicht an alle Öffentlichkeit, sondern nur an die Privacy-Gruppe “Freunde”.

Wer von Mastodon kommt, kennt so etwas in der Art auch schon, und zwar “Follower” statt “Öffentlich” und “Öffentlich (still)”. Der Effekt ist, dass ein Post nur an die eigenen Follower rausgeht und an diejenigen, die man erwähnt.

Aber auch hier gibt es wieder Unterschiede.

Der erste Unterschied: Auf Mastodon ist ein Post an “Follower” nicht wirklich privat. Wenn man einen Post an “Follower” schickt, taucht er trotzdem für alle Welt lesbar auf der Timeline des eigenen Kontos auf.

Auf Hubzilla sind Privacy-Gruppen dagegen in das Berechtigungssystem eingebunden. Wenn man einen Post an eine Privacy-Gruppe schickt, dann haben nur die Mitglieder dieser Privacy-Gruppe (und man selbst natürlich) die Berechtigung, den Post und die darauf folgende Konversation zu sehen. Besucher des eigenen Kanals sehen diesen Post nicht im Stream des Kanals, es sei denn, sie sind a) eingeloggt auf etwas, das clientseitig OpenWebAuth unterstützt (z. B. Friendica, Hubzilla, (streams), Forte), können dadurch also identifiziert werden, und b) selbst Mitglied dieser Privacy-Gruppe.

Der zweite Unterschied: Die “Follower”-Funktion auf Mastodon ist ansonsten quasi wie eine DM an alle Follower (und wer auch immer zusätzlich erwähnt wird; das wird hier auch noch behandelt). Das heißt: Die eigenen Follower könnten auf den Post antworten, sehen aber normalerweise nicht voneinander die Antworten und können daher normalerweise auch nicht auf die Antworten anderer Follower antworten.

Sagen wir, Alice postet an ihre “Follower”. Bob und Carol antworten auf sie. Dann sieht Bob aber Carols Antwort nicht und kann auch auf Carols Antwort nicht antworten.

Noch dazu scheint sie kaputt zu sein: Sagen wir wieder, Alice postet an ihre “Follower”. Bob antwortet, natürlich auch an “Follower”; das sind dann Alices Follower. Carol antwortet auf Bob, natürlich auch an “Follower”; aber weil Mastodon nie die komplette Struktur einer Konversation im Blickfeld hat, sind das Bobs Follower.

Auf Hubzilla trifft hier aber das Berechtigungssystem auf die Unterstützung von Konversationen.

Angenommen, Alice hat drei Kontakte: Bob, Carol und Dave. Die sind alle in ihrer Privacy-Gruppe “Freunde”, und der Einfachheit halber sind alle vier auf Hubzilla.

Jetzt schickt Alice einen Post an diese Privacy-Gruppe “Freunde”, also an Bob, Carol und Dave. Zunächst einmal dürfen nur Alice, Bob, Carol und Dave den Post überhaupt sehen. Aber mit dem Post sehen sie auch die ganze Konversation, nur dass die aktuell nur den Post enthält.

Nun antwortet Bob auf Alices Post. Eine Möglichkeit zu bestimmen, an wen die Antwort geht, gibt es auf Hubzilla nicht. Das wird immer vom (Start-)Post definiert und kann innerhalb einer Konversation nicht verändert werden. Bobs Kommentar geht nun an Alice und von da an Carol und Dave. Alle vier sehen nun die Konversation mit Alices Post und Bobs Kommentar. Alice hat sie ja dazu berechtigt.

Darauf antwortet Carol auf Alices Post. Wieder geht ihr Kommentar an Alice und von da an Bob und Dave. Alle vier sehen nun die Konversation mit Alices Post, Bobs Kommentar und Carols Kommentar.

Jetzt antwortet Dave auf Carols Kommentar. Das kann und darf er sogar. Der Kommentar geht aber nicht an Carol, sondern direkt an Carol vorbei an die Threadstarterin Alice und dann von da an Bob und Carol. Alle vier sehen nun die Konversation mit Alices Post, Bobs Kommentar, Carols Kommentar und Daves Antwort auf Carols Kommentar.

Wenn dazu noch Eve kommt, die Alice von Mastodon aus folgt, dann sieht sie Alices Post als DM und die Kommentare von Bob und Carol sowie die Antwort von Dave gar nicht. Sie kann nur auf Alice antworten, aber Bob, Carol und Dave bekommen ihren Kommentar dann auch zugeschickt mit denselben Berechtigungen wie der Rest der Konversation, und sie können auch drauf antworten. Diese Antworten wiederum dürfte Eve wieder als einzelne DMs sehen.

Hier kommt übrigens der dritte Unterschied zum Tragen: Auf Mastodon kann man auf einen öffentlichen Post sehr wohl auch im “Follower”-Modus antworten, also nur den Followern desjenigen Akteurs, dem man antwortet.

Auf Hubzilla sind die Berechtigungen der ganzen Konversation vom Startpost vorgegeben. Das betrifft auch neue Kommentare und Antworten: Auch bei ihnen sind die Berechtigungen festgelegt auf die des Startpost. Wenn der öffentlich ist, sind alle Kommentare und alle Antworten auch öffentlich.

Und so reagiert Hubzilla auch etwas irritiert, wenn es mitbekommt, wie jemand auf Mastodon auf einen an sich öffentlichen Post mit Einschränkungen (“Follower”, “Private Erwähnung”) antwortet, belässt die tatsächlichen Berechtigungen aber wie beim Startpost. Vorsichtshalber darf man so eine Antwort aber weder wiederholen noch teilen.

Letztlich ist der vierte Unterschied: Auf Mastodon kann man in einem “Follower”-Post zusätzlich Fediverse-Akteure erwähnen, wie man sie auch in öffentlichen Posts erwähnen kann, und zwar auch wildfremde. Die bekommen den Post dann auch und werden entsprechend benachrichtigt, wie sie immer benachrichtigt werden, wenn sie erwähnt werden. Das ist auf Mastodon ein sehr populäres Belästigungstool: Man erwähnt die Zielperson in einem “Follower”-Post. Dann bekommt die Zielperson es mit, die eigenen Follower auch, aber die Admins und Moderatoren nicht.

Auf Hubzilla funktioniert das nicht. Wenn man einen Post an eine Privacy-Gruppe schickt, sind wie gesagt Berechtigungen im Spiel. Mit bloßen Erwähnungen kann man Berechtigungen aber nicht erweitern oder aushebeln. Wenn man also jemanden in einem Post an eine Privacy-Gruppe erwähnt, dann bleibt das eine einfache Erwähnung. Derjenige Akteur hat ja keine Berechtigung, den Post zu sehen, weil er nicht in der Privacy-Gruppe ist. Also wird der Post an diesen Akteur gar nicht erst versandt.

Es gibt schon die Möglichkeit, einen Post an eine Privacy-Gruppe und an einzelne Akteure zu schicken. Dafür muss man die Zielgruppe des Posts aber individuell zusammenstellen. Dann kann man neben einer oder mehreren Privacy-Gruppen auch einzelne Kontakte dazuwählen. Und hier ist schon der nächste Pferdefuß: Da stehen einem eben nur Kontakte zur Verfügung und keine Wildfremden. Einzelnen wildfremden Akteuren kann Hubzilla keine Berechtigungen für irgendwas erteilen.


In Hubzillas Berechtigungssystem sind Kontaktrollen die zweite Ebene unterhalb der Kanalrolle. Letztere definiert, was allen Kontakten und teilweise auch Nichtkontakten erlaubt bzw. bewilligt ist. Die Kontaktrollen definieren, was zusätzlich dazu einzelnen Kontakten erlaubt bzw. bewilligt ist, je nachdem, welcher Kontaktrolle sie zugeordnet sind. (Der Vollständigkeit halber ist die dritte Ebene die, die definiert, was im Rahmen eines einzelnen Post und der dazugehörigen Konversation erlaubt ist.)

contactrole

Wie aber wird eine Kontaktrolle einem Kontakt zugeordnet?

An dieser Stelle sei noch einmal erwähnt: Auf Hubzilla können Kontakte weitreichend eingestellt und konfiguriert werden, während sie auf Mastodon einfach nur da oder nicht da sind. In der Verbindungsbearbeitung kann man also einen Kontakt auswählen, bearbeiten und dann einstellen, welche Kontaktrolle ihm zugeordnet ist. Das geht auch schon bei neuen Verbindungsanfragen, bevor man diese bestätigt. Und es ist tatsächlich sinnvoll, für den neuen Kontakt noch vor der Bestätigung eine Kontaktrolle auszuwählen.

cr-zuweisen

Man darf aber von Kontaktrollen nicht zu viel erwarten. Eins können sie nämlich nicht: einzelnen Kontakten Berechtigungen verweigern, die der Kanal schon allgemein per Kanalrolle erteilt. Alle vom Kanal erteilten Berechtigungen werden auch an alle Kontaktrollen vererbt und somit allen Kontakten gewährt. Ob man sie nun in der Kontaktrolle erteilt oder nicht, macht keinen Unterschied, wenn der Kanal sie schon erteilt hat.

Wenn man also eine bestimmte Berechtigung nicht allen Kontakten erteilen will, dann darf nicht schon der Kanal sie erteilen. Dann müssen sie statt dessen per Kontaktrollen denjenigen Kontakten erteilt werden, die sie haben sollen.

Das kann man auch nahtlos nachträglich einstellen:

• Man geht zunächst einmal sämtliche Kontaktrollen durch, die eine bestimmte Berechtigung weiterhin erteilen sollen. Da aktiviert man diese Berechtigung. Dabei kann man getrost ignorieren, dass sie sowieso vererbt wird. Ab dem fünften Schritt wird sie ja eben nicht mehr vererbt, und dann soll sie trotzdem denjenigen erteilt bleiben, die sie haben sollen. Dafür wird sie hier schon mal vorab aktiviert.

• Dann legt man sich, falls nötig, eine Kontaktrolle an, die diese Berechtigung nicht erteilt.

• Diese neue Kontaktrolle teilt man, wiederum falls nötig, denen zu, die besagte Berechtigung nicht haben sollen.

• Als nächstes stellt man die Kanalrolle auf “Benutzerdefiniert” um, sofern sie das nicht sowieso schon ist. Ist sie das nicht, werden automatisch die Berechtigungen der bisherigen Kanalrolle übernommen. Nur sind sie jetzt eben einzeln konfigurierbar.

• Zu guter Letzt geht man in die Bearbeitung der Kanalrolle “Benutzerdefiniert” und schaltet da die nicht mehr kanalweit erwünschte Berechtigung ab. Für diejenigen Kontakte, bei deren Kontaktrollen man im ersten Schritt diese Berechtigung ausdrücklich aktiviert hat, ändert sich nichts. Denjenigen Kontakten, in deren Kanalrolle die Berechtigung aber deaktiviert ist, wird sie nun entzogen.

Wer unbedingt alle Berechtigungen bei Kontakten variabel haben will, der sollte die Kanalrolle “Benutzerdefiniert” wählen, in dieser dann überhaupt nichts erlauben und sämtliche Berechtigungen für Kontakte nur über Kontaktrollen regeln, an die dann ja keine Berechtigungen vererbt sind. Es ist nur eben letztlich ziemlich unpraktisch in der Handhabung.