Skip to main content

Überblick

Diese Anleitung führt Sie durch die Erstellung einer Salesforce External Client App (ECA) in Ihrer Organisation. Am Ende haben Sie einen Consumer Key und ein Consumer Secret, die Sie in den Salesforce-Konnektor von DeepMask einfügen — so können Ihre Nutzer Datensätze durchsuchen, Opportunitys prüfen und Aktivitäten direkt in DeepMask protokollieren.
DeepMask verwendet delegierte OAuth-2.0-Authentifizierung (Authorization Code + PKCE). DeepMask speichert niemals Salesforce-Passwörter. Jede Aktion läuft als der angemeldete Nutzer — DeepMask sieht nicht mehr, als dieser Nutzer in Salesforce bereits sieht.
Eine DeepMask-Verbindung entspricht einer Salesforce-Organisation. Ein Nutzer, der in mehreren Organisationen arbeitet, verbindet jede Organisation separat.
Bereits verbunden? Siehe die Salesforce-(Enterprise-)Konnektor-Aktionen für alles, was die KI in Salesforce tun kann — Datensätze finden, Pipeline auswerten, Aktivitäten protokollieren und mehr.

Voraussetzungen

Erforderlicher Zugriff

  • Salesforce-Organisation mit API-Zugriff — Jede Lightning-/Salesforce-Cloud-Edition, die die REST-API nutzen kann (einschließlich Developer Edition, Enterprise, Unlimited und Sandboxes).
  • Berechtigung zum Erstellen von External Client Apps — Ein Systemadministrator oder ein Nutzer, der Setup → External Client App Manager öffnen kann.
  • API aktiviert bei jedem Nutzer, der sich verbindet — dies ist ein Profil-/Berechtigungssatz-Flag in Salesforce.

Was Sie nicht benötigen

  • Kein verwaltetes Salesforce-Paket (für eine lokale/eigene App)
  • Keine Entwicklertools oder Befehlszeile
  • Kein Servicekonto oder gemeinsam genutzter Integrationsnutzer
Eine lokale External Client App autorisiert nur Nutzer der Organisation, die sie erstellt hat. Das ist die richtige Einrichtung für eine einzelne Kundenorganisation oder eine Sandbox. Das Verbinden einer zweiten, nicht verwandten Organisation erfordert entweder eine paketierte ECA oder eine separate lokale ECA in dieser Organisation.

Schritt 1 — External Client Apps zulassen

1

Salesforce-Setup öffnen

Melden Sie sich in der Organisation an, die Sie verbinden möchten. Klicken Sie auf das Zahnradsymbol und wählen Sie Setup.
2

ECA-Erstellung aktivieren

Geben Sie in Quick Find External Client App Settings ein. Öffnen Sie es und erlauben Sie Nutzern, External Client Apps zu erstellen, falls dieser Schalter aus ist.

Schritt 2 — External Client App erstellen

1

External Client App Manager öffnen

Geben Sie in Quick Find External Client App Manager ein und klicken Sie auf New External Client App.
2

Grunddaten ausfüllen

Local bedeutet, dass diese App nur zu dieser Organisation gehört. Wechseln Sie den Distribution State nicht auf Packaged, es sei denn, Sie veröffentlichen ein verwaltetes Paket für viele Kundenorganisationen.

Schritt 3 — OAuth-Einstellungen konfigurieren

Noch auf der neuen App (oder Settings → OAuth Settings nach dem Speichern) aktivieren Sie OAuth und wenden genau diese Werte an.

Callback-URL

Geben Sie diesen Wert exakt ein (kein abschließender Schrägstrich). DeepMask leitet nach der Salesforce-Anmeldung hierher weiter.
Das Feld akzeptiert mehrere URLs, eine pro Zeile. Für chat.deepmask.io benötigen Sie nur diese eine Zeile.

OAuth-Berechtigungen (Scopes)

Verschieben Sie genau diese drei in Selected OAuth Scopes. Das Anfordern eines Scopes, den die App nicht gewährt, lässt die gesamte Anmeldung mit invalid_scope fehlschlagen. Belassen Sie alle anderen Scopes unter Available (fügen Sie keine Full access, Web, Chatter, Visualforce oder benutzerdefinierten Berechtigungen hinzu).

Flow Enablement

Stimmen Sie diese Checkbox-Auswahl ab:
Der Konnektor von DeepMask verwendet Authorization Code (der Nutzer meldet sich an) plus die Client ID und das Client Secret, die Sie in DeepMask einfügen. Nutzeraktionen laufen weiterhin als dieser Salesforce-Nutzer — nicht als ein Client-Credentials-Servicekonto.

Sicherheit

Stimmen Sie diese Checkbox-Auswahl ab:
PKCE und Refresh-Token-Rotation bleiben an. JWT-basierte Access-Tokens bleiben aus. DeepMask speichert das jeweils neueste Refresh-Token, wenn Salesforce es rotiert.
Speichern Sie die App. Salesforce benötigt oft 2–10 Minuten, um eine neue ECA zu propagieren, bevor die erste Anmeldung funktioniert.

Schritt 4 — OAuth-Richtlinien festlegen

Öffnen Sie die App → Policies (oder OAuth Policies) und setzen Sie:
„All users may self-authorize” lässt jeden Teamkollegen seinen eigenen Salesforce-Nutzer verbinden. Wenn Sie dies auf vorab autorisierte Nutzer beschränken, muss ein Admin jede DeepMask-Verbindung genehmigen.

Schritt 5 — Consumer Key und Secret kopieren

1

OAuth-Einstellungen öffnen

Öffnen Sie im External Client App Manager DeepMask Salesforce Connector → Settings → OAuth Settings.
2

Anmeldedaten anzeigen

Klicken Sie auf Consumer Key and Secret. Salesforce fordert Sie möglicherweise auf, Ihre Identität zu bestätigen.
3

Beide Werte kopieren

Der Salesforce-Konnektor von DeepMask fragt nach Client ID und Secret. Ordnen Sie die Salesforce-Bezeichnungen so zu:
Das Consumer Secret ist geheim. Geben Sie es nicht in Chats, Tickets oder ein öffentliches Repository. Nur die Konnektor-Einstellungen von DeepMask (oder Ihr eigener Secret-Speicher) sollten es enthalten.

Schritt 6 — Salesforce in DeepMask verbinden

1

DeepMask öffnen

Gehen Sie zu chat.deepmask.io und melden Sie sich an.
2

Konnektoren öffnen

Klicken Sie in der Chat-Symbolleiste auf Konnektoren hinzufügen (oder Konnektoren in der linken Navigation).
3

Salesforce-Konnektor starten

Suchen Sie die Salesforce-Kachel und klicken Sie auf Verbinden.
4

Client ID und Secret einfügen

DeepMask fragt nach zwei Feldern:
  • Client ID — der Consumer Key aus Schritt 5
  • Secret — das Consumer Secret aus Schritt 5
Falls DeepMask auch nach einer Umgebung fragt, wählen Sie Production (login.salesforce.com) oder Sandbox (test.salesforce.com).
5

Speichern und bei Salesforce anmelden

Klicken Sie auf Save & Connect. Ein Salesforce-Anmeldefenster öffnet sich. Melden Sie sich als der Salesforce-Nutzer an, dem diese Verbindung gehören soll, und genehmigen Sie die angeforderten Scopes.
6

Bestätigen

Sie kehren zu DeepMask zurück. Die Salesforce-Kachel zeigt Verbunden. Die KI kann Salesforce nun in diesem Workspace nutzen, beschränkt auf die Datensätze dieses Nutzers.
Fragen Sie etwas wie „Was steht heute in Salesforce für mich an?” oder „Finde offene Opportunitys, die mir gehören.” Wenn der Konnektor aktiv ist, ruft DeepMask Salesforce auf und gibt Datensätze mit Lightning-Links zurück.
Lokale/Developer-Edition-Organisationen: Wenn Salesforce Cross-org OAuth flows are not supported zurückgibt, starten Sie die Anmeldung an der My Domain der Organisation (https://<mydomain>.my.salesforce.com) statt an login.salesforce.com. Sandboxes verwenden test.salesforce.com oder die Sandbox-My-Domain.

Fehlerbehebung

„invalid_scope” bei der Anmeldung

Ursache: DeepMask hat api, refresh_token und openid angefordert, aber die ECA gewährt einen davon nicht (meist openid). Lösung: Bearbeiten Sie die OAuth-Scopes der ECA, aktivieren Sie alle drei, speichern Sie, warten Sie einige Minuten und versuchen Sie es erneut.

„Cross-org OAuth flows are not supported”

Ursache: Eine lokale ECA kann OAuth bei login.salesforce.com/test.salesforce.com für einige Developer-Edition- und Scratch-Organisationen nicht abschließen. Lösung: Autorisieren Sie an der My Domain der Organisation (https://<name>.my.salesforce.com/services/oauth2/authorize). Paketierte Produktions-Apps verwenden login.salesforce.com.

Redirect-URI-Konflikt

Ursache: Die Callback-URL in der ECA stimmt nicht exakt mit der URL überein, die DeepMask sendet. Lösung: In den OAuth Settings muss die Callback-URL exakt lauten: https://chat.deepmask.io/api/user/connectors/oauth/callback Kein abschließender Schrägstrich. Keine http://-Variante.

Nutzer verbindet sich, sieht aber keine (oder nur einige) Datensätze

Ursache: Salesforce-Freigabe, Feldebenen-Sicherheit oder eine fehlende API aktiviert-Berechtigung — kein DeepMask-Fehler. Lösung:
  • Bestätigen Sie, dass der Nutzer dieselben Datensätze in der Salesforce-Oberfläche sehen kann.
  • Bestätigen Sie, dass sein Profil API aktiviert hat.
  • Benutzerdefinierte Objekte müssen abfragbar und für dieses Profil sichtbar sein.

„Need admin approval” oder Nutzer können sich nicht selbst autorisieren

Ursache: Permitted Users ist nicht auf „All users may self-authorize” gesetzt, oder die Organisation verlangt admin-genehmigte Apps. Lösung: Setzen Sie Permitted Users auf All users may self-authorize, oder autorisieren Sie jeden Nutzer vorab auf der ECA-Policies-Seite.

Anmeldung funktioniert in Salesforce, aber DeepMask meldet weiterhin nicht autorisiert

Ursache: Das Access-Token ist abgelaufen, das Refresh-Token wurde widerrufen, oder die auf der Verbindung gespeicherte Instanz-URL der Organisation ist veraltet. Lösung: Trennen und erneut verbinden. Nach einer Sandbox-Aktualisierung oder My-Domain-Änderung müssen Nutzer sich neu verbinden, damit DeepMask die neue instance_url speichert.

Sicherheit & Datenschutz

Delegierte Authentifizierung

  • Jeder Salesforce-Aufruf läuft als der angemeldete Nutzer.
  • Salesforce erzwingt Profil, Berechtigungssätze, Freigaberegeln und Feldebenen-Sicherheit. DeepMask fügt keine zusätzliche Sichtbarkeit hinzu.
  • Das Entfernen des Salesforce-Zugriffs eines Nutzers entfernt sofort das, was er in DeepMask sehen kann.

Keine gespeicherten Passwörter

DeepMask speichert ein Refresh-Token und den Organisations-Host (instance_url), verschlüsselt im Ruhezustand. Es speichert nicht das Salesforce-Passwort des Nutzers.

Schreibvorgänge werden bestätigt; es gibt kein Löschen

Nutzer können Datensätze erstellen und aktualisieren (und Anrufe/Meetings protokollieren). Aktualisierungen und Mehrfach-Erstellungen erfordern nach einer Vorschau eine ausdrückliche Bestätigung. DeepMask kann keine Salesforce-Datensätze löschen.

Zugriff widerrufen

  • In DeepMask → Konnektoren → Salesforce → Trennen.
  • In den Salesforce-Einstellungen → External Client App Manager → Ihre App → App widerrufen oder löschen.
Beide Aktionen machen Tokens ungültig. Nutzer müssen sich erneut verbinden, um den Zugriff wiederherzustellen.
Fragen zu Datenresidenz, Compliance oder Sicherheit? Kontaktieren Sie den DeepMask-Support unter support@deepmask.io.