Plugin „Explicit Role“ (Härtung der Instanzsicherheit)
Aktivieren Sie das Plugin Explicit Role (com.glide.explicit_roles), um der Instanz die neuen Rollen „snc_internal“ und „snc_external“ für B2B- und B2C-Anwendungen bereitzustellen, wodurch verhindert wird, dass externe Benutzer auf interne Daten zugreifen. Enterprise-Anwender (Mitarbeiter) müssen über die interne Rolle verfügen, während Enterprise-Anwender (Nicht-Mitarbeiter) über die externe Rolle verfügen müssen.
Wenn Sie das Plugin für die explizite Rolle installieren:
- Sie weist allen vorhandenen Benutzern die neue Rolle snc_internal zu. Außerdem werden alle Tabellen ohne Rolle mit der Rolle „snc_internal“ zugewiesen.
- Wenn Sie einen Anwender oder eine Tabelle erstellen, nachdem Sie das Plugin „Explicit Role“ aktiviert haben, weist Now Platform dem Anwender oder der Tabelle die Rolle snc_internal zu.
- Das Now Platform verhindert, dass Benutzer mit der Rolle „snc_external“ auf eine Tabelle zugreifen, die nicht explizit mit der Rolle „snc_external“ zugewiesen ist.
- Auf Tabellen mit der öffentlichen Rolle können sowohl interne als auch externe Benutzer zugreifen.
- Einige Serviceportal-Widgets erfordern eine Anmeldung, aber keine bestimmten Anwenderrollen. Nach der Installation des Plugins für explizite Rollen sind diese Portale für externe Anwender nicht mehr zugänglich.
- Um den Zugriff für externe Benutzer zu ermöglichen, bearbeiten Sie Ihr Widget, um die erforderlichen Rollen von „ leer “ in „snc_internal“ und „snc_external“zu ändern.
- Ein Beispiel für dieses Problem sind Kunden, die die Fallverwaltungsanwendung verwenden und möchten, dass externe Benutzer Dateien an ihre Falldatensätze anhängen können. Wenn Sie die Konfiguration für das Widget „ cryption-context-auswahl “ wie beschrieben ändern, können externe Benutzer wie erwartet anhängen.
- Weitere Informationen zum Konfigurieren von Widgets finden Sie unter Widget-Instanzoptionen konfigurieren
Hinweis:
Verschieben Sie keine System-Update Sets zwischen Instanzen, unabhängig davon, ob das Plugin „Explicit Roles“ aktiviert oder deaktiviert ist. Weitere Informationen finden Sie unter System-Update Sets.
Rollenzusammenfassung
- snc_internal
- Diese Rolle wird allen internen Anwendern (Mitarbeiter oder intern für eine Organisation) zugewiesen. Jeder neue Anwender, der hinzugefügt wird, erhält diese Rolle auch bei der ersten Anmeldung/dem ersten Identitätswechsel, sofern dem Anwender nicht bereits die Rolle „snc_external“ zugewiesen ist. Alle vorhandenen Zugriffssteuerungsregeln (ACLs) ohne Rolle werden mit der Rolle „snc_internal“ gepatcht. Bei neuen ACLs fügt Now Platform diese Rolle automatisch hinzu, wenn die ACL ohne Rolle gespeichert wird.
- snc_external
- Diese Rolle gibt an, dass sich der Anwender außerhalb Ihrer Organisation befindet und keinen Zugriff auf Ressourcen haben sollte, es sei denn:
- Sie gestatten den Zugriff explizit über ACLs für die Rolle snc_external oder
- Sie gewähren ihnen explizit zusätzliche Rollen.
- Öffentlich
- Alle Entitäten mit zugewiesener öffentlicher Rolle sind für snc_internal- und snc_external-Benutzer zugänglich.
Bei Verwendung des Plugins „Explicit Role“:
- Überprüfen und validieren Sie, dass eine Tabelle mit der öffentlichen Rolle keine vertraulichen Datensätze für externe Anwender (einschließlich nicht authentifizierter öffentlicher Anwender) enthält.
- Wenn die Tabelle mit der Rolle „public“ vertrauliche Daten enthält und Sie die Verwendung vertraulicher Datensätze für externe Benutzer einschränken möchten, führen Sie eine der folgenden Optionen aus:
- Entfernen Sie die öffentliche Rolle aus der Tabelle oder
- Fügen Sie der Tabelle eine zusätzliche geskriptete ACL hinzu.
- Überprüfen und validieren Sie, ob alle Endpunkte, z. B. die geskripteten REST APIs, die Rollen GlideRecordSecure verwenden oder explizit Rollen mit
canRead(),canWrite(),canUpdate()undcanDelete() überprüfen.
Weitere Informationen
| Attribut | Beschreibung |
|---|---|
| Plugin-Name | com.glide.explicit_roles |
| Konfigurationstyp | Systemdefinition > Plugin |
| Konfigurieren Sie im Instanz-Sicherheitszentrum | Nein |
| Zweck | Um zu verhindern, dass externe Benutzer auf interne Daten zugreifen. |
| Empfohlener Wert | Aktiv |
| Funktionale Auswirkung | (Niedrig) Keine signifikanten Auswirkungen, da das Plugin der Tabelle automatisch die Rolle „snc_internal“ zuweist, sodass die vorhandenen internen Benutzer weiterhin über den erforderlichen Zugriff verfügen. |
| Sicherheitsrisiko | (Hoch) Externe Anwender (Nicht-Mitarbeiter) können auf viele vertrauliche Tabellen in Now Platform zugreifen, denen keine Rollen zugewiesen sind. Sie sollen nur internen Benutzern (Mitarbeitern) zugänglich sein. |
| Referenzen | Explizite Rollen |
Schritte zum Konfigurieren von
Beim Erstellen einer Funktion oder Anwendung mit den expliziten Rollen:
- Erstellen Sie eine Rolle, die die Rolle snc_external für Ihre neue Funktion oder Anwendung erbt.
- Wenn Sie einen externen Benutzer erstellen, entfernen Sie die Rolle „snc_internal“ und fügen Sie die neu erstellte Rolle hinzu, die die Rolle „snc_external“ erbt.
- Wenn Sie der vorhandenen Tabelle die neue Rolle hinzufügen, die die Rolle „snc_external“ erbt, überprüfen und validieren Sie, dass die Tabelle keine vertraulichen Datensätze enthält.
- Validieren Sie beim Erstellen einer Tabelle, dass auf die Tabelle nur autorisierte interne und externe Anwenderrollen zugreifen können.
- Wenn Sie Endpunkte wie die Scripted REST API erstellen, verwenden Sie GlideRecordSecure, oder überprüfen Sie Rollen explizit mit
canRead(),canWrite(), canUpdate() undcanDelete().
Stellen Sie beim Erstellen einer Tabelle mit der Rolle „public“ sicher, dass die Tabelle keine vertraulichen Datensätze für die externen Anwender enthält, einschließlich nicht authentifizierter öffentlicher Anwender.