Dateien und Gast-/Experience-Cloud-Nutzer: Risiken
Wie Dateien in Salesforce für Gast- und Experience-Cloud-Nutzer sichtbar werden — das Feld Visibility, Set by Record und Fehlkonfigurationen, die Daten leaken.
Dateizugriff ist schon intern schwierig genug. Nimmt man Experience Cloud (Community) und Gastnutzer hinzu, verschärft sich die Lage in beide Richtungen: Die Dateien, die externe Nutzer sehen sollen, erscheinen manchmal nicht, und die Dateien, die sie nicht sehen sollen, gelangen manchmal an die Öffentlichkeit. Beides läuft auf denselben kleinen Satz von Einstellungen hinaus. So bekommen Sie sie richtig hin.
Externe Nutzer verwenden dasselbe Modell — mit einem zusätzlichen Tor
Community- und Gastnutzer sehen Dateien über dasselbe ContentDocumentLink-Modell wie alle anderen. Es gibt jedoch ein zusätzliches Tor, das interne Nutzer selten erreichen: das Feld Visibility des Links.
| Visibility | Wen es einschließt |
|---|---|
AllUsers | Interne und externe/Community-Nutzer |
InternalUsers | Nur interne Nutzer |
SharedUsers | Nur Nutzer, mit denen explizit geteilt wurde |
Damit ein Experience-Cloud-Nutzer eine an einen Datensatz angehängte Datei sehen kann, müssen zwei Dinge zutreffen: Er kann auf den Datensatz zugreifen, und die Visibility des Datei-Links schließt externe Nutzer ein (typischerweise
AllUsers).
Deshalb ist „Der Community-Nutzer sieht den Datensatz, aber nicht dessen Datei” ein so häufiges Ticket — der Datensatzzugriff ist in Ordnung, aber die Visibility ist InternalUsers.
Fehlerbild 1: Dateien, die angezeigt werden sollten, werden es nicht
Die harmlose Variante. Ein Community-Nutzer kann einen Case öffnen, aber dessen Anhänge fehlen. Die Lösung ist fast immer die Visibility des ContentDocumentLink der Datei sowie sicherzustellen, dass in der Community hochgeladene Dateien die richtige Sichtbarkeit erben. Prüfen Sie den Link, nicht die Datensatzfreigabe.
Fehlerbild 2: Dateien, die nicht angezeigt werden sollten, werden es
Die gefährliche Variante — und der Grund, warum dieses Thema für die Sicherheit relevant ist.
Gastnutzer sind nicht authentifiziert. Sie sind anonyme Besucher Ihrer öffentlichen Website. Alles, was die Konfiguration eines Gastnutzers offenlegt, ist daher faktisch für das gesamte Internet verfügbar:
- Ein öffentlicher Link (ohne Login, by design) auf einer sensiblen Datei.
- Dateien, die an Datensätze angehängt sind, die das Gastnutzer-Profil erreichen kann, mit
AllUsers-Sichtbarkeit. - Zu weit gefasste Sharing Sets / Sharing Rules, die der Gast- oder externen Zielgruppe mehr Datensätze gewähren als beabsichtigt — und damit mehr Dateien.
Zu freizügiger Gastzugriff gehört zu den am häufigsten gemeldeten Problemen bei der Offenlegung von Salesforce-Daten. Die Dateien reisen mit allen Datensätzen mit, die Sie versehentlich offengelegt haben.
Die beiden Tore, die zusammen zu auditieren sind
Da der externe Dateizugriff von Datensatzzugriff UND Datei-Visibility abhängt, müssen Sie beide als Paar prüfen:
- Welche Datensätze können Gast- und externe Nutzer erreichen? (Community-Freigabemodell, Sharing Sets, Sharing Rules.)
- Welche Visibility haben die an diese Datensätze angehängten Dateien?
- Gibt es öffentliche Links auf sensiblen Dateien?
Der angestrebte Endzustand: Genau die Dateien, die Sie veröffentlichen wollten, sind für die externe Zielgruppe erreichbar — und nichts anderes. Dorthin zu gelangen ist dieselbe Kernfrage wie beim übrigen Datensatzzugriffsmodell, nur mit der riskantesten denkbaren Zielgruppe.
Wissen, was die Öffentlichkeit tatsächlich erreichen kann
Die Kombination — externer Datensatzzugriff mal Datei-Visibility plus etwaige öffentliche Links — ist genau das, was die Offenlegung gegenüber Gastnutzern schwer einzuschätzen und von Hand schwer zu überprüfen macht. AgentForceAccess wertet sie genauso aus wie internen Zugriff: Es fragt, was ein Gast- oder Community-Nutzer sehen kann, und verfolgt die Datensätze, die er erreicht, sowie die Dateien, die diese Datensätze offenlegen — so wird „Leakt irgendetwas an die Öffentlichkeit?” zu einer Frage, die Sie tatsächlich beantworten können.
Häufig gestellte Fragen
Warum kann mein Community-Nutzer eine Datei auf einem Datensatz, auf den er zugreifen kann, nicht sehen?
Meistens ist die Visibility des ContentDocumentLink auf InternalUsers gesetzt, was externe Nutzer ausschließt, selbst wenn der Datensatzzugriff in Ordnung ist. Um die Datei für Community-Nutzer freizugeben, benötigt sie in der Regel Visibility = AllUsers. Datensatzzugriff allein reicht nicht, wenn Visibility die Zielgruppe ausschließt.
Worin besteht das Risiko bei Gastnutzern und Dateien?
Gastnutzer sind nicht authentifizierte Besucher. Jede Datei, die ihre Freigabekonfiguration oder ein öffentlicher Link offenlegt, ist faktisch im öffentlichen Internet verfügbar. Zu weit gefasster Gastzugriff — oder ein vergessener öffentlicher Link — gehört zu den häufigsten Befunden bei der Offenlegung von Salesforce-Daten.
Wie hängt die Dateisichtbarkeit mit der Datensatzfreigabe in einer Community zusammen?
Es sind zwei separate Tore. Der Nutzer benötigt Zugriff auf den Datensatz (über das Community-Freigabemodell, Sharing Sets oder Sharing Rules) UND die Visibility des Datei-Links muss externe Nutzer einschließen. Beides muss zusammenpassen, weshalb der Dateizugriff in Communitys ein häufiges Support- und Sicherheitsthema ist.
Was sollte ich prüfen, bevor ich Dateien in einer Community offenlege?
Bestätigen Sie, welche Datensätze Gast- und externe Nutzer erreichen können, und prüfen Sie dann die Visibility der an diese Datensätze angehängten Dateien. Auditieren Sie alle öffentlichen Links. Das Ziel ist, dass genau die beabsichtigten Dateien — und keine anderen — für die externe Zielgruppe erreichbar sind.
Sieh es dir in deiner eigenen Org an
AgentForceAccess erklärt in klarer Sprache, warum jeder Nutzer jeden Datensatz oder jede Datei sehen kann — über jeden Salesforce-Sharing-Mechanismus hinweg.
Frühen Zugang anfragen