Chat Rechtevergabe

FrAntje

Benutzer
Mitglied seit
25. Mai 2016
Beiträge
359
Punkte für Reaktionen
17
Punkte
18
Hallo zusammen,

ich suche gerade die Möglichkeit im Synology Chat ein paar Rechte einzustellen, muss aber feststellen, es geht nicht :)
Weiß jemand ob ich im Chat zumindest Benutzern das Erstellen von Kanälen verbieten kann.
Dass man die Standardkanäle nicht löschen kann, damit habe ich mich abgefunden, auch wenn mir der Sinn nicht klar ist.

Ich glaube bisher kann das Gastkonto im Chat diese Anforderung erfullen oder? Aber dieser hat dann keinen Zugriff auf andere Dienste, daher fällt er raus.
 

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.341
Punkte für Reaktionen
633
Punkte
174
Ich bin neulich drüber gestolpert, dass jeder einen Kanal aufmachen kann, soweit gut ...
Weniger gut ist, das der Admin, wenn er denn dort nicht zugelassen ist, das nicht mitbekommt und auch nicht in der Lage ist, daran teil zu nehmen.
In meinen Augen ist das ein Zustand, der mich davon abhält, einen Chat zu betreiben.
 

FrAntje

Benutzer
Mitglied seit
25. Mai 2016
Beiträge
359
Punkte für Reaktionen
17
Punkte
18
Generell finde ich das Chat Paket super. Nur was die sich bei den Rechten gedacht haben. Basics fehlen da völlig.
Das Gast Konto erfüllt genau den richtigen Zweck, somit ist es also technisch bereits möglich. Synology hat nur noch nicht die Knöppe eingefügt.

HAbe schon versucht dem Gast Konto im DSM nachträglich dann Rechte für Drive, oder File Station zu geben. Aber Selbst wenn der Gast in der Gruppe der Admins ist, darf er nichts.
 

MontagID

Benutzer
Mitglied seit
26. Mrz 2018
Beiträge
1
Punkte für Reaktionen
0
Punkte
0
Ich suche derzeit auch nach Antworten diesbezüglich. Leider erscheint mir das ganze etwas untransparent. Für mich leider nicht immer ganz nachvollziehbar wer was wann darf.
Gerade dann wenn ich als Dienstleister eine Kommunikationsplattform für meine verschiedenen Kunden anbieten möchte ist das ein Spiel mit dem Feuer. Auf der einen Seite möchte man eine gesicherte Verbindung, die die Funktionen Drive, Kalender und Office bietet, auf der anderen möchte man aber natürlich nicht, dass andere Chat Benutzerkonten auf diese Dinge ebenfalls zugreifen können oder überhaupt sehen, welche weiteren Benutzer es gibt. Ich möchte nicht, dass Benutzer_1 einen Kanal aufmacht oder eine direkte Konversation mit einem anderen Benutzer (bzw. Kunden) startet, ohne dass ich das weiß. Ich habe jetzt viel rumprobiert, mein "Allgemein" Kanal ist jetzt voll mit sinnlosen Nachrichten und hinweisen welche Benutzer hinzugekommen und wieder gegangen sind. Lade ich nun einen meiner Kunden ein, betrachtet er als Erstes den "schönen" Allgemein Kanal.

Wie ich dem ersten bei Beitrag wohl entnehmen kann, ist es nicht möglich Allgemein und Zufällig komplett zu löschen?
Kann mir jemand sagen, wie man Nachrichten löscht? Diese sinnlosen Nachrichten dort in den Kanälen müssten man doch bestimmte manuell irgendwie löschen können. Weder mit Account des Verfassers noch mit einem anderen Admin Account finde ich eine Option zum löschen dieser Nachrichten.
 

FrAntje

Benutzer
Mitglied seit
25. Mai 2016
Beiträge
359
Punkte für Reaktionen
17
Punkte
18
Für diesen Zweck möchte ich es auch nutzen. Das könnte soweit auch funktionieren, nur die Sache mit den Allgemeinen Chat ist ein Problem.
Dafür gibt es keine Lösung, derzeit zumindest.
Ich habe entsprechend ein Ticket erstellt um eine Lösung zu finden.
Lösung wäre ja, den Channel einfach löschen.
Alternativ wäre ein Gastkonto, aber dann gehen Kalender, Drive etc. nicht.

Zum Thema Collaboration fehlt dem System noch einiges, das weiß Synology und da wird noch einiges kommen. Also abwarten und Tee trinken
 

vtom

Benutzer
Mitglied seit
01. Jul 2008
Beiträge
61
Punkte für Reaktionen
0
Punkte
6
Hab den Chat grad im Test in der Firma und so wurde die fehlenden Adminmöglichkeiten schon bemängelt.
Vor allem das der Admin geschlossene Gruppen nicht einsehen kann....

Aber hallo ! Darf man das überhaupt ?
Darf der Admin auch einfach so die Mails der MA lesen ?

Der Chat ist ein sehr kreatives Werkzeug wo seinen Sinn und Zweck erfüllt: das Kommunizieren öffentlich, in offenen und geschlossenen Gruppen oder direkt.
Und was da gesprochen wird muss ja nicht jeder wissen ;-)

Wir sind ja in der Firma
 

ITFD

Benutzer
Mitglied seit
19. Dez 2018
Beiträge
2
Punkte für Reaktionen
0
Punkte
1
Guten!

Also ich wollte den Synology Chat auch bei uns in der Firma einsetzen. Was mich jedoch gewaltig stört ist die Tatsache, dass jeder Kanäle erstellen und löschen kann, ja sogar Kanäle in die jemand eingeladen wurde kann man löschen bzw schließen.

Hab ich was übersehen oder ist das tatsächlich so??
Oder das jeder Benutzer über die PC-Webkonsole Zugriff auf die "Archiv-Anzeige" hat?
 
Zuletzt bearbeitet:

Starics

Benutzer
Mitglied seit
14. Sep 2019
Beiträge
2
Punkte für Reaktionen
2
Punkte
0
Lösung für Rechtevergabe im Synology Chat

Hallo zusammen!

Da es wohl immer noch keine Lösung für die Rechtevergabe auf der Synology-Chat-Oberfläche gibt :(, habe ich mir mal die Datenbanken des Chat-Servers genauer angeschaut und habe festgestellt, dass es tatsächlich Rechteprivilegientabellen gibt.
Diese beschränken sich zwar nur auf vier Gruppen (System-Admin, Normaler-Benutzer, Gast und Gastmanager), aber immerhin kann man dadurch verhindern, dass beispielsweise Nicht-Administratoren einen Kanal löschen bzw. archivieren (und vieles mehr) können, was meiner Meinung nach schon etwas gefährlich ist / war. Zudem man diese ja nicht mehr aus dem Archiv wiederherstellen kann.

Im Einzelnen können folgende Rechte vergeben werden:


acl_idacl_nameMeine tolle Beschreibung :D
1channel_kick*** Rechte für das Entfernen von Personen aus Kanälen
2channel_set*** Rechte für das Bearbeiten des Kanalnamens / der Kanalbeschreibung
3channel_invite*** Rechte für das Einladen von Personen in Kanäle
4channel_join* (keine Ahnung)
5channel_create*** Rechte für das Erstellen von Kanälen
6channel_close*** Rechte für das Schließen / Löschen von Kanälen
7channel_archive*** Rechte für das Archivieren von Kanälen
8channel_anonymous** Wenn man diese Berechtigung nicht hat, scheint die Standard-Konversation "Mein Speicherplatz" nicht verfügbar zu sein und die Navigation sich auf das zu beschränken worauf man auch wirklich Zugriff hat - ähnlich wie die Ansicht eines Gastes. (Bitte mit Vorsicht verwenden)
9channel_disjoin*** Rechte für das Verlassen eines Kanals
10channel_public*** Rechte für das Einsehen öffentlicher Kanäle
11channel_encryption** (verbuggt)
50webhook_create*** Rechte für das Erstellen eines neuen Webhooks
51webhook_read*** Rechte für das Verwenden von Webhooks
100guest_manage** Rechte für das Einladen eines neuen Gasts (Gast-Manager) (Diese Berechtigung besser in Ruhe lassen, da sie auch in der Obfläche der Chat Admin Konsole konfiguriert werden kann!)
*** getestet und funktionsfähig
** Achtung
* ???


Um die Rechte-Tabellen bearbeiten zu können, ist es wichtig, dass ihr eine SSH-Verbindung/Telnet-Verbindung zu eurer Disk-Station aufbauen könnt und bei besonderen Anforderungen SQL-Kenntnisse habt. Das Grundlegende werde ich allerdings hier erklären:


1. Wie gerade erwähnt, muss zuerst eine SSH-Verbindung/Telnet-Verbindung (z. B. mithilfe von PuTTY) zur Disk-Station aufgebaut werden. Wichtig ist sich hierbei mit einem Konto der Administratoren-Gruppe (im DSM die Gruppe "administrators") anzumelden. (Sollten beim nächsten Schritt Probleme auftretten, kann man es mal mit dem User root versuchen)

2. Danach kann man sich mithilfe des folgenden Befehls als Datenbank-User "postgres" anmelden (das Passwort sollte, standardmäßig das sein, was man beim Einrichten seiner Synology DS angegeben hat):

Rich (BBCode):
sudo -u postgres psql


3. Wenn alles geklappt hat, sollte so etwas in der Art vor dem Cursor stehen: "postgres=#" , wodurch man sich auf dem PSQL-Komandozeilen-Interface befindet.

4. Nun verbinden wir uns mit der Chat-Datenbank:
Rich (BBCode):
\c synochat

Folgendes sollte als Bestätigung erscheint worden sein: "You are now connected to database "synochat" as user "postgres"."



5. Jetzt können wir bereits Änderungen in der Datenbanktabelle vornehmen. Hierfür verwendet man einfach normale SQL-Statements.



Für uns ist die Tabelle "acl_permissions" besonders wichtig, da hier den Berechtigungen (in der oberen Tabelle - ^^siehe oben^^) die Bentzergruppen (System-Admin, Normaler-Benutzer, Gast und Gastmanager) zugeordnet werden.
(Eigentlich werden die Gruppen - wie ich sie genannt habe - in der Datenbanktabelle "Rollen" (role / roles) genannt - also nicht wundern. Ich denke man kann sich besser etwas unter "Gruppen" als unter "Rollen" vorstellen.)

roles (Gruppen):
role_id (Guppen-Id)role_name (Gruppen-Name)Beinhaltet?
1System-AdminAlle Benutzer die im DSM der Gruppe "administrators" zugeordnet sind.
2Normaler BenutzerAlle Benutzer (außer Gäste)
3GastAlle Gäste
4GastmanagerEine Person, die zum Gastmanager ernannt worden ist.


In der Datenbanktabelle "acl_permissions" wird die "role_id" der "acl_id" (^^siehe Tabelle oben^^) zugeordnet!


Beispiel 1:

Vorhaben:
Ich möchte allen Nicht-Administratoren das Löschen und Archivieren von Kanälen verbieten.

Theoretische Umsetzung:
Die Berechtigungen für das Löschen und Archivieren von Kanälen statt allen "normalen Benutzern" nun nur "System-Admins" zuordnen

Praktische Umsetzung:
Mithilfe des folgenden SQL-Befehls die der Berechtigungs-Id (acl_id) zugewiesenen Gruppen-Id (role_id) von 2 (wie sie standardmäßig gesetzt ist) auf 1 ändern:

Für das Einschränken der Löschfunktion:
Rich (BBCode):
UPDATE acl_permissions SET role_id = 1 WHERE acl_id = 6;

Für das Einschränken der Archivierungsfunktion:
Rich (BBCode):
UPDATE acl_permissions SET role_id = 1 WHERE acl_id = 7;

Das war's schon. In der Browserversion sollte nun bei Nicht-Admins in den Kanaleinstellungen der Reiter "Kanalverwaltung" verschwunden sein und in der Chat-App ein Fehler beim Löschen oder Archivieren eines Kanals kommen. Wenn nur die Löschfunktion oder die Archivierungsfunktion eingeschränkt worden ist, sollte die jeweilige Option ausgeblendet worden sein statt dem Verschwinden des Reiters "Kanalverwaltung".

__________________________________________________

Beispiel 2:

Vorhaben:
Ich möchte allen Nicht-Administratoren das Erstellen von neuen Kanälen und das Ändern von Kanalnamen und Kanalbeschreibungen verbieten.

Theoretische Umsetzung:
Die Berechtigungen für das Erstellen und Ändern von Kanälen statt allen "normalen Benutzern" nun nur "System-Admins" zuordnen.

Praktische Umsetzung:
Mithilfe des folgenden SQL-Befehls die der Berechtigungs-Id (acl_id) zugewiesenen Gruppen-Id (role_id) von 2 (wie sie standardmäßig gesetzt ist) auf 1 Ändern:

Erstellen von Kanälen einschränken:
Rich (BBCode):
UPDATE acl_permissions SET role_id = 1 WHERE acl_id = 5;

Ändern (Name und Beschreibung) von Kanälen einschränken:
Rich (BBCode):
UPDATE acl_permissions SET role_id = 1 WHERE acl_id = 2;


Das war's schon. Nicht-Admins sollten nun keinen neuen Kanal mehr erstellen können bzw. nicht mehr den Namen oder die Beschreibung eines bereits existierenden Kanals ändern können.

__________________________________________________

Um das Ganze vielleicht besser zu verstehen, kann man sich auch einfach mal die ganzen Datenbank-Tabellen anzeigen lassen, um nachvollziehen zu können wie ich auf die Befehle oben gekommen bin:

Alle Datenbanktabellen in einer Datenbank anzeigen:
Rich (BBCode):
\dt

Inhalt einer Datenbanktabelle ausgeben:
Rich (BBCode):
SELECT * FROM <TABELLENNAME>;
Tabellenname ohne <>
__________________________________________________

Ich hoffe ich konnte hiermit dem einen oder anderen etwas weiterhelfen. Bei Fragen einfach melden. :)

Viele Grüße
Philipp
 
Zuletzt bearbeitet:

AndiHeitzer

Benutzer
Sehr erfahren
Mitglied seit
30. Jun 2015
Beiträge
3.341
Punkte für Reaktionen
633
Punkte
174
Hallo Philipp, vielen Dank für die Ausführungen :eek:
 

ReneStadtk

Benutzer
Mitglied seit
18. Nov 2019
Beiträge
1
Punkte für Reaktionen
0
Punkte
1
Hallo Starics,

vielen Dank für Deine Ausführungen. Ich habe Deine Anleitung folgend, nach SSH-Verbindung mit Putty bis Schritt 4 alles, wie beschrieben erledigt. Anschließend die SQL-Statements abgesetzt. Ist es korrekt, dass nach Absetzen einer SQL- Anweisung keine Reaktion sichtbar wird? Ich habe jedenfalls, die Statements deines Beispiels zu 1 abgesetzt, keine Fehlermeldung (allerdings auch keine Reaktion) erhalten. Anschließend habe ich die Diskstation vorsorglich neu gestartet. Die User (keine Admins) haben sich dann mit ihren jeweiligen Clients neu angemeldet und können Kanäle dennoch Löschen und archivieren.

Ich vermute, dass die SQL-Befehle doch keine Änderungen der Tabelle vorgenommen haben. Auch führt der Versuch über - SELCT * FROM acl_permissions - den Inhalt der Tabelle anzuzeigen nicht zum Erfolg. Auch hier keine Reaktion. Die von Dir beschriebenen Meldungen unter Punkt 2 - 4 habe ich erhalten. Auch kann ich mit \dt alle Tabellen anzeigen lassen.

Weißt Du, wo es hängen kann?

Gruß René
 

Starics

Benutzer
Mitglied seit
14. Sep 2019
Beiträge
2
Punkte für Reaktionen
2
Punkte
0
Hallo René,

erstmal muss ich mich entschuldigen, dass ich dich einen Monat lang warten lassen habe.
Ich war nicht zu Hause und hatte deshalb nicht mitbekommen, dass jemand eine Frage gestellt hat.

Ich vermute, dass du das Semikolon am Ende des SQL-Statements vergessen hast.
Normalerweise braucht man bei SQL-Abfragen dieses zwar nicht, aber da wir uns auf einer Komandozeile befinden, muss diese wissen wann ein Befehl zu Ende ist, da ein einziger Befehl auch über mehrere Zeilen geschrieben werden kann.
Du lagst also vermutlich richtig. Dein Statement wurde gar nicht abgesendet und somit wurde auch keine Änderung in der Tabelle vorgenommen.

Normalerweise sollte nach einem UPDATE eine Nachricht wie "UPDATE 1" (also ein Datensatz wurde aktualisiert) auftauchen.

Viele Grüße
Philipp
 

SvensenDE

Benutzer
Mitglied seit
12. Aug 2016
Beiträge
139
Punkte für Reaktionen
14
Punkte
18
Lösung für Rechtevergabe im Synology Chat

Ich hoffe ich konnte hiermit dem einen oder anderen etwas weiterhelfen. Bei Fragen einfach melden. :)

Viele Grüße
Philipp

Vielen Dank für die Lösung

Und wenn schon sowas integriert ist frag ich mich warum Synology das nicht mit UI ein Pflegt *kopfschütteln*
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat