Zugriffsrechte

Überblick

Zugriffsrechte für einen Service werden im JSON-Format definiert. Die JSON-Datei besteht aus dem Bereich "policies" sowie den optionalen Bereichen "fallbackPolicies", "properties", "restrictions" und "extensions".

{
    "policies": [],
    "fallbackPolicies": [], // Optional
    "properties": {},       // Optional
    "restrictions": {},     // Optional
    "extensions": {}        // Optional
}

Die Reihenfolge, in der diese Eigenschaften definiert werden, ist unerheblich. Die optionalen Eigenschaften können Sie entweder weglassen oder ihnen wie im Beispiel oben jeweils das leere Objekt {} zuordnen.

Automatische Vervollständigung und Syntaxprüfung

Das hier beschriebene JSON-Format für Zugriffsrechte ist auch als JSON-Schema beschrieben. Mithilfe des Schemas können Sie sicherstellen, dass Ihre JSON-Datei den Vorgaben entspricht. Außerdem können Editoren wie Visual Studio Code auf Basis des Schemas Vorschläge, Beschreibungen sowie eine automatische Vervollständigung für Elemente bei der Eingabe anbieten.

Fügen Sie der JSON-Datei die folgende "$schema" Eigenschaft hinzu, um die automatische Vervollständigung zu aktivieren:

{
    "$schema": "https://raw.githubusercontent.com/conterra/policies-json/1.7.0/schema/policies.schema.json",
    "policies": []
}

Eine Kopie des JSON-Schemas ist Teil der security.manager NEXT Auslieferung und verfügbar unter [SECMAN_DIR]/resources/policies.schema.json. Damit können Sie die automatische Vervollständigung auch nutzen, wenn Sie in Ihrer Umgebung keinen Zugriff auf https://raw.githubusercontent.com/conterra/policies-json/…​ haben. Um diese Kopie zu verwenden, passen Sie die $schema Eigenschaft wie folgt an (ersetzen Sie [SECMAN_DIR] mit dem konkreten Verzeichnispfad):

{
    "$schema": "[SECMAN_DIR]/resources/policies.schema.json",
    "policies": []
}

Zugriffsrechte

Die Elemente des "policies"-Arrays definieren die Regeln, die für den Zugriff auf einen Service gelten. Ein einzelnes Zugriffsrecht ist eine Kombination aus Layern, Rollen und optionalen Einschränkungen.

Um Personen, die der Rolle role_division_42 zugeordnet sind, Zugriff auf die Layer mit den IDs 0 und 1 zu erteilen, definieren Sie folgende Regel:

{
    "policies": [
        {
            "layers": ["0", "1"],
            "roles": ["role_division_42"]
        }
    ]
}

Layer

Die "layers"-Eigenschaft eines "policies"-Elements ist ein Array von Layer-IDs, so wie sie ein Kartenservice definiert. Layer-IDs können explizit, als Intervall oder als "*", d.h. alle Layer, angegeben werden.

Das folgende Beispiel definiert zwei Zugriffsrechte. Das erste Zugriffsrecht wird auf die Layer 0 und 3 bis 5 angewendet, während das zweite Zugriffsrecht auf alle Layer des Service wirkt:

{
    "policies": [
        {
            "layers": ["0", "3-5"],
            "roles": ["enhancedSecurity_any"]
        },
        {
            "layers": ["*"],
            "roles": ["role_division_42"]
        }
    ]
}

Rollen

Die "roles"-Eigenschaft eines "policies"-Elements ist ein Array von Rollen-IDs. Eine Rollen-ID bezieht sich auf eine Portal-Gruppe oder ArcGIS Server Rolle, die einer Person zugeordnet ist, die eine Serviceanfrage durchführt. Bei einer Authentifizierung durch ArcGIS Enterprise werden die Rollen-IDs eines Zugriffsrechts mit den IDs der Portal-Gruppen oder Namen der ArcGIS Server Rollen der anfragenden Person verglichen.

Beispiel: Eine Person ist der Portal-Gruppe "Division 42" zugeordnet, deren Gruppen-ID im Portal 41477fa98f444444855e1e0b7b132b45 ist. Folgende Regel erlaubt ihr den Zugriff auf den Layer 0 eines Service:

{
    "policies": [
        {
            "layers": ["0"],
            "roles": ["41477fa98f444444855e1e0b7b132b45"]
        }
    ]
}

Außerdem können Sie die folgenden Rollen-IDs verwenden, um unabhängig von konkreten Rollenzuordnungen Zugriff zu erlauben:

  • enhancedSecurity_any

  • enhancedSecurity_authenticated

Ein Zugriffsrecht für die Rolle enhancedSecurity_any gilt unabhängig davon, ob eine Person bei ArcGIS Enterprise angemeldet ist oder welche Rolle sie besitzt. Allerdings muss der Service, für den diese Regel definiert wird, in ArcGIS Enterprise öffentlich freigegeben sein, damit sie wirken kann.

Die Rolle enhancedSecurity_authenticated können Sie nutzen, um nur Personen Zugriff zu erteilen, die bei ArcGIS Enterprise angemeldet sind.

Im folgenden Beispiel ist es allen Personen erlaubt, auf Layer 0 zuzugreifen. Angemeldete Personen können sowohl auf Layer 0 als auch auf Layer 1 zugreifen:

{
    "policies": [
        {
            "layers": ["0"],
            "roles": ["enhancedSecurity_any"]
        },
        {
            "layers": ["1"],
            "roles": ["enhancedSecurity_authenticated"]
        }
    ]
}

Wird bei der Autorisierung einer Anfrage kein zutreffendes Zugriffsrecht gefunden, wird der Zugriff abgelehnt. Dieses Standardverhalten kann mithilfe der Fallback-Zugriffsrechte angepasst werden.

Einschränkungen

Mithilfe von Einschränkungen (Restrictions) können Sie den Zugriff auf Layer genauer eingrenzen. Das "restrictions"-Array eines Zugriffsrechts enthält eine Liste von IDs, die Elemente des "restrictions"-Objekts auf oberster Ebene der JSON-Datei referenzieren.

Das folgende Beispiel zeigt ein Zugriffsrecht, das die Einschränkung "california" referenziert, die weiter unten in der Datei definiert wird.

{
    "policies": [
        {
            "layers": ["0"],
            "roles": ["${guests}"],
            "restrictions": ["california"]
        }
    ],
    "restrictions": {
        "california": {
            "type": "spatial",
            "featuretypeurl": "https://gis.example.com:6443/arcgis/rest/services/USA/FeatureServer/0",
            "featurequery": "state = 'California'"
        }
    }
}

Im Abschnitt Definition von Einschränkungen erfahren Sie mehr über die Konfiguration von Einschränkungen.

Fallback-Zugriffsrechte

Das "fallbackPolicies"-Array passt das Standardverhalten des security.manager NEXT an, wenn kein passendes Zugriffsrecht für die Rollen eines Nutzers gefunden wird. Anstatt eine Anfrage dann zu blockieren, werden stattdessen alle für den jeweiligen Layer zutreffenden Fallback-Zugriffsrechte angewendet.

Jeder Eintrag innerhalb des "fallbackPolicies"-Array definiert dabei ein Fallback-Zugriffsrecht. Innerhalb dieses Fallback-Zugriffsrechts können die aus Zugriffsrechten bekannten Eigenschaften "layers" und "restrictions" verwendet werden. Die Eigenschaft "roles" darf nicht benutzt werden.

Im folgenden Beispiel besitzt eine Rolle vollständigen Zugriff auf Layer 1. Alle anderen Rollen verfügen nur über lesenden Zugriff auf Layer 1. Zusätzlich wird der Raumausschnitt für alle anderen Rollen für alle Layer mittels der räumlichen Einschränkung california beschränkt.

{
    "fallbackPolicies": [
        {
            "layers": ["*"],
            "restrictions": ["california"]
        },
        {
            "layers": ["1"],
            "restrictions": ["readonly"]
        }
    ],
    "policies": [
        {
            "roles": ["41477fa98f444444855e1e0b7b132b45"],
            "layers": ["1"],
            "restrictions": []
        }
    ],
    "restrictions": {
        "readonly": {
            "type": "readonly"
        },
        "california": {
            "type": "spatial",
            "featuretypeurl": "https://gis.example.com:6443/arcgis/rest/services/USA/FeatureServer/0",
            "featurequery": "state = 'California'"
        }
    }
}

Es wird empfohlen, "fallbackPolicies" nicht gemeinsam mit Zugriffsrechten für die "enhancedSecurity_any"-Rolle zu verwenden. Die Zugriffsrechte für "enhancedSecurity_any" greifen für jeden Nutzer, dadurch würden die "fallbackPolicies" niemals angewendet werden.

Vollzugriffsrecht

Das Vollzugriffsrecht ermöglicht es den angegebenen Benutzerrollen, die Autorisierungs-Logik von security.manager NEXT vollständig zu umgehen.

Um ein Vollzugriffsrecht zu definieren, müssen die layers: [] mindestens "*" enthalten und das restrictions: [] darf keinen Inhalt enthalten bzw. nicht vorhanden sein. Auf diese Weise werden Anfragen von Benutzern mit der angegebenen Rolle ohne weitere Prüfung an den ArcGIS Server weitergeleitet.

Der Vollzugriff wird nur gewährt, wenn keine andere Berechtigung für dieselbe Benutzerrolle definiert wird. Dies gilt auch für die zusätzlichen Benutzerrollen enhancedSecurity_any und enhancedSecurity_authenticated.

Beachten Sie, dass neben dem Layer-Zugriff auch weitere ArcGIS-Funktionen (z.B. Utility Network Layers) freigeschaltet werden, die ansonsten durch den security.manager NEXT blockiert werden.

Im folgenden Beispiel wird Nutzern der Rolle department_supervisors ein Vollzugriffsrecht gewährt.

{
    "policies": [
        {
            "roles": ["department_supervisors"],
            "layers": ["*"],
            "restrictions": []
        }
    ]
}

Eigenschaften

Das "properties"-Array besteht aus Schlüssel-Wert-Paaren, mit denen Sie Eigenschaften definieren können, die an anderer Stelle in dieser Datei verwendet werden können. Die Werte von Eigenschaften müssen Strings sein. Die Schlüssel müssen mit einem Buchstaben beginnen und dürfen nur aus den Zeichen a-z, A-Z, 0-9 sowie '_' (Unterstrich) und '-' (Minus) bestehen. Sie können die Werte in anderen Elementen verwenden, indem Sie diese mit ${property_name} referenzieren. Auf diese Weise können Sie Eigenschaften beschreibende Namen geben.

Im folgenden Beispiel wird die Rollen-ID 41477fa98f444444855e1e0b7b132b45 der Eigenschaft "guests" zugeordnet. Sie kann daher auf folgende Weise in einem Zugriffsrecht referenziert werden:

{
    "policies": [
        {
            "layers": ["0"],
            "roles": ["${guests}"]
        }
    ],
    "properties": {
        "guests": "41477fa98f444444855e1e0b7b132b45"
    }
}

Definition von Einschränkungen

Eine Regel kann den Zugriff auf Layer begrenzen, indem Sie ihr Einschränkungen (Restrictions) zuordnen.

Das folgende Beispiel zeigt ein Zugriffsrecht, das die Einschränkung "california" referenziert, die im "restrictions"-Element auf oberster Ebene definiert ist.

{
    "policies": [
        {
            "layers": ["0"],
            "roles": ["${guests}"],
            "restrictions": ["california"]
        }
    ],
    "restrictions": {
        "california": {
            "type": "spatial",
            "featuretypeurl": "https://gis.example.com:6443/arcgis/rest/services/USA/FeatureServer/0",
            "featurequery": "state = 'California'"
        }
    }
}

Der Name einer Einschränkung (wie zum Beispiel california in obigem Beispiel) darf nur aus den Zeichen a-z, A-Z, 0-9 sowie '_' (Unterstrich) und '-' (Minus) bestehen. Er muss mit einem Buchstaben beginnen.

Sie können folgende Arten von Einschränkungen verwenden:

Räumlich

Zugriff auf ein räumliches Gebiet einschränken

Feld

Zugriff auf Felder eines Layers einschränken

Objekt

Zugriff auf Objekte eines Layers einschränken

Editierung

Editieren von Geometrien und Attributen verbieten

Einschränkungen, die in einem Zugriffsrecht referenziert werden, gelten immer für alle in diesem Zugriffsrecht angegebenen Layer. Wenn Sie für unterschiedliche Layer unterschiedliche Einschränkungen definieren möchten, müssen dazu separate Zugriffsrechte angelegt werden.

Räumliche Einschränkungen

Mittels räumlicher Einschränkungen können Sie festlegen, für welchen geographischen Bereich eines Layers Daten zugegriffen werden können. Räumliche Einschränkungen legen fest, welche Bereiche in einem Kartenbild sichtbar sind. Im Falle der Abfrage von Objekten (Features) bestimmen Sie mit räumlichen Einschränkungen, dass nur solche Features zurückgegeben werden, die im erlaubten Bereich liegen.

Den erlaubten Bereich definieren Sie als Referenz auf Geometrien, die von einem ArcGIS Feature-Service bereitgestellt werden.

Die Regel im folgenden Beispiel erlaubt Zugriff auf jene Objekte von Layer 1, die innerhalb oder auf dem Rand von Features des Layers https://gis.example.com:6443/arcgis/rest/services/RestrictionAreas/FeatureServer/0 liegen, deren Eigenschaft area_name gleich 51 ist.

{
    "policies": [
        {
            "layers": ["1"],
            "roles": ["${guests}"],
            "restrictions": ["area51"]
        }
    ],
    "restrictions": {
        "area51": {
            "type": "spatial",
            "featuretypeurl": "https://gis.example.com:6443/arcgis/rest/services/RestrictionAreas/FeatureServer/0",
            "featurequery": "area_name = '51'",
            "imageoperation": "arcgis-clipping"     //optional
        }
    }
}

Wird eine Dienstanfrage gestellt, die mehrere räumliche Beschränkungen umfasst, wendet der security.manager die räumliche Schnittmenge aller beteiligten Geometrien an. Dies kann dazu führen, dass die Antworten weniger Daten enthalten, als Sie zunächst erwarten. Wenn Sie beispielsweise zwei getrennte räumliche Beschränkungen definieren, die Europa bzw. Australien abdecken, wäre das resultierende Kartenbild leer, da die Schnittmenge beider Geometrien leer ist. Sie können jedoch eine einzige Einschränkung definieren, die ein Gebiet als eine Kombination mehrerer Objekte definiert, indem Sie eine entsprechende featurequery verwenden, um nur Objekte in Europa und Australien zu erhalten.

Eine räumliche Einschränkung hat folgende Konfigurationsoptionen:

type

Typ der Einschränkung, muss den Wert "spatial" besitzen.

featuretypeurl

URL, die einen Feature-Service Layer referenziert. Die URL kann entweder als Pfad relativ zum aktuellen ArcGIS Server oder als absolute URL angegeben werden.

Achten Sie darauf, dass der hier angegebene Feature-Service sich vom geschützten Service unterscheidet. Andernfalls können zur Laufzeit Fehler beim Zugriff auf den geschützten Service auftreten.

Relative URL

Pfad zu einem Feature-Service Layer auf dem aktuellem ArcGIS Server. Der Pfad ist relativ zum Dienste-Hauptverzeichnis des Servers. Mit relativen URLs können auch zugriffsgeschützte Features referenziert werden.

Beispiel: "/OptionalFolderName/RestrictionAreas/FeatureServer/0"

Absolute URL

Absolute URL zu einem Feature-Service Layer auf einem beliebigen ArcGIS Server. Nur öffentlich zugreifbare Features können benutzt werden.

Beispiel: "https://gis.example.com:6443/arcgis/rest/services/RestrictionAreas/FeatureServer/0"

featurequery

Definition Expression (oder WHERE clause), mit der die Features abgefragt werden, die den erlaubten Bereich beschreiben.

Sie können als Teil der Query Nutzerattribute verwenden, beispielsweise in der Form OWNER = '${user.username}' oder DEPARTMENT IN ${user.roles}.

imageoperation (optional)

Legt fest, wie räumliche Einschränkungen auf die Kartenserviceanfrage /export angewendet werden. Dieser Parameter hat keine Auswirkung auf Feature-Service Anfragen. Für Web Mapping Services (WMS) werden räumlich eingeschränkte Kartenanfragen immer wie für soi-clipping beschrieben behandelt, unabhängig von der aktuellen Einstellung.

Erlaubte Parameterwerte:

  • "soi-clipping" (Voreinstellung): Blendet alle Kartenbilddaten aus, die nicht vom erlaubten Bereich abgedeckt werden. Am Rande des eingeschränkten Bereichs werden Objekte (Features), Symbole und Beschriftungen gegebenenfalls abgeschnitten. Das Ergebnis ist eine Karte, die nur Daten für den erlaubten Bereich für alle Layer der Karte enthält.

  • "arcgis-clipping": Blendet Kartenbilddaten aus, die nicht vom erlaubten Bereich abgedeckt werden. Am Rande des eingeschränkten Bereichs werden Objekte (Features) und Symbole gegebenenfalls abgeschnitten. Im Gegensatz zum soi-clipping bleiben Beschriftungen jedoch erhalten. Außerdem werden Daten nur für die Layer ausgeblendet, für die die Einschränkung im Zugriffsrecht definiert wurde.

    arcgis-clipping funktioniert nur für Kartenservices, die von ArcGIS Pro aus veröffentlicht werden. Wenn Sie diesen Wert für einen von ArcMap veröffentlichten Dienst setzen, wird der security.manager ihn ignorieren und stattdessen den Wert soi-clipping anwenden.
Performance-Hinweise

Die Leistung von Karten-service Anfragen kann je nach der gewählten imageoperation und der Komplexität der räumlichen Einschränkung (d. h. der Anzahl der Stützpunkte) stark variieren. Die Operation arcgis-clipping ist bei weniger komplexen Geometrien wesentlich schneller als soi-clipping, bei komplexeren Geometrien jedoch wesentlich langsamer.

Da eine allgemeine Empfehlung schwer zu geben ist, sollten Sie verschiedene Werte für imageoperation ausprobieren, um die besten Ergebnisse für Ihren Aufbau zu erzielen.

Feldeinschränkungen

Mit Feldeinschränkungen können Sie festlegen, dass bestimmte Felder eines Layers oder einer Tabelle nicht zugreifbar, d.h. weder sichtbar noch editierbar, sein sollen. Die Felder, die verborgen werden sollen, müssen als Liste von Feldnamen angegeben werden.

Für die Definition einer Feldeinschränkung im "restrictions"-Element auf oberster Ebene des Dokuments müssen Sie folgende Eigenschaft angeben:

type

Typ der Einschränkung, muss den Wert "field" besitzen.

Danach spezifizieren sie genau eine der folgenden Eigenschaften:

hiddenfields

Array von Strings, der die Feldnamen eines Layers oder einer Tabelle aufzählt, auf die nicht zugegriffen werden darf.

Nutzen Sie immer den vollständigen Feldnamen, wie er in den Metadaten steht, z.B. layer.name.

allowedfields

Array von Strings, der die Feldnamen eines Layers oder eine Tabelle aufzählt, auf die zugegriffen werden darf.

Nutzen Sie immer den vollständigen Feldnamen, wie er in den Metadaten steht, z.B. layer.name.

Einschränkungen
  • Technisch benötigte Felder, wie zum Beispiel die Objekt-ID, Global-ID, Type-ID-Felder, das Geometriefeld und der Anzeigetitel, können nicht versteckt werden.

Beachten Sie bei der Verwendung von Feldeinschränkungen weitere Limitierungen für Feature Services und für Kartendienste.

Folgendes Zugriffsrecht legt eine Einschränkung für Felder des Layers 42 fest. Personen, die nicht angemeldet sind, dürfen nicht auf die Felder DIVISION_SIZE, DIVISION_REVENUE und LAYER.NAME zugreifen.

{
    "policies": [
        {
            "layers": ["42"],
            "roles": ["enhancedSecurity_any"],
            "restrictions": ["secret_division_data"]
        }
    ],
    "restrictions": {
        "secret_division_data": {
            "type": "field",
            "hiddenfields": ["DIVISION_SIZE", "DIVISION_REVENUE", "LAYER.NAME"]
        }
    }
}

Objekteinschränkungen

Sollen bestimmte Objekte (Features) eines Layers oder einer Tabelle für Mitglieder bestimmter Rollen nicht sichtbar sein, können Sie Objekteinschränkungen verwenden. Dazu geben Sie einen Abfrageausdruck (Definition Query) an, mit dem Sie festlegen, auf welche Objekte eine Person zugreifen kann.

Für die Definition einer Objekteinschränkung im "restrictions"-Element auf oberster Ebene des Dokuments müssen Sie folgende Eigenschaften angeben:

type

Typ der Einschränkung, muss den Wert "feature" besitzen.

query

Abfrageausdruck, in der vom ArcGIS Server unterstützten SQL-Syntax, analog zur Einschränkung einzelner Layer z.B. in ArcMap oder ArcGIS Pro.

Nutzen Sie immer den vollständigen Feldnamen, wie er in den Metadaten steht, z.B. layer.name.
Sie können als Teil des Abfrageausdrucks Attribute des anfragenden Nutzers referenzieren.

Folgendes Zugriffsrecht legt eine Einschränkung für Objekte des Layers 42 fest. Alle angemeldeten Personen dürfen nur auf Objekte zugreifen, deren Felder DIVISION_NAME und LAYER.DISTRICT den Wert North besitzt.

{
    "policies": [
        {
            "layers": ["42"],
            "roles": ["enhancedSecurity_authenticated"],
            "restrictions": ["northern_division"]
        }
    ],
    "restrictions": {
        "northern_division": {
            "type": "feature",
            "query": "DIVISION_NAME = 'North' AND LAYER.DISTRICT = 'North'"
        }
    }
}

Nutzerattribute

Folgende Attribute des anfragenden Nutzers können in einem Abfrageausdruck verwendet werden:

Attribut Beschreibung Beispiel

${user.username}

Der Nutzername der anfragenden Person, so wie er zum Anmelden beim Portal order ArcGIS Server benutzt wird.

OWNER = '${user.username}'
Fragt alle Objekte ab, deren Feld OWNER dem Nutzernamen der anfragenden Person entspricht.

${user.roles}

  • ArcGIS Server: List of names of all roles assigned to the requesting user.

  • ArcGIS Verbundserver: List of IDs of all portal groups the requesting user belongs to.

DEPARTMENTS IN ${user.roles}
Fragt alle Objekte ab, deren Feld DEPARTMENT einer der Rollen oder Gruppen-IDs der anfragenden Person entspricht.

Die Einschränkung auf lediglich zwei verfügbare Nutzerattribute ist durch ArcGIS Enterprise bedingt. Um Objekteinschränkungen abhängig von weiteren Informationen über die zugreifende Person durchzusetzen, können Sie security.manager NEXT um einen User Information Service erweitern.

Akzeptierte Nutzerattribute

Standardmäßig prüft der security.manager, ob Attribute einer Person in SQL-Literale aufgelöst werden, wenn sie in einer Abfrage durch ihre tatsächlichen Werte ersetzt werden. Zum Beispiel werden in der Abfrage LEVEL = ${user.level} nur Literale wie 1234 für das Attribut user.level akzeptiert. Wenn ein Attribut nicht in ein SQL-Literal aufgelöst werden kann, lehnt der security.manager die Anfrage ab, und die anfragende Person erhält eine Fehlerantwort.

Um diese Prüfung für ein bestimmtes Attribut explizit zu deaktivieren, markieren Sie es innerhalb der Abfrage wie folgt als insecure:

{
    ...
    "restrictions": {
        "project_features_only": {
            "type": "feature",
            "query": "${user.projectFilter;insecure}"
        }
    }
}

Wenn ein Attribut als insecure gekennzeichnet ist, fügt der security.manager den vorliegenden Wert ohne Prüfung ein.

Markieren Sie ein Attribute nur als insecure, wenn Sie der Quelle, die die Werte der Attribute liefert, absolut vertrauen.

Editier-Einschränkungen

Standardmäßig kann jeder Benutzer mit Zugriff auf einen Feature-Service sowohl Geometrie- als auch Attribut-Daten bearbeiten. Dies kann für bestimmte Ebenen und Gruppen verweigert werden.

type

Typ der Einschränkung, muss den Wert "readonly" besitzen.

Folgendes Zugriffsrecht verbietet das Editieren für alle Layer durch Benutzer der Gruppe enhancedSecurity_authenticated.

{
    "policies": [
        {
            "layers": ["*"],
            "roles": ["enhancedSecurity_authenticated"],
            "restrictions": ["editing_denied"]
        }
    ],
    "restrictions": {
        "editing_denied": {
            "type": "readonly"
        }
    }
}

Ist jemand mehr als einer Gruppe zugeordnet und für mehrere dieser Gruppen existieren Zugriffsrechte für einen bestimmten Layer, so wird der Zugriff unter Berücksichtigung der Gesamtheit aller in dieser Zugriffsrechte definierten Einschränkungen gewährt.

Das bedeutet:

  • Räumliche Einschränkungen: Zugriff ist nur auf die Fläche erlaubt, in der sich alle in den relevanten Zugriffsrechten definierten Geometrien überschneiden.

  • Feldeinschränkungen: Die Felder werden verborgen, die in zumindest einer der relevanten Zugriffsrechte ausgeschlossen werden.

  • Objekteinschränkungen: Zugriff wird nur auf die Objekte gewährt, die in allen relevanten Zugriffsrechten erlaubt sind.

  • Editier-Einschränkungen: Das Editieren ist nicht erlaubt, wenn in mindestens einem Zugriffsrecht eine Editier-Einschränkung definiert ist.

Erweiterungen

Im optionalen Abschnitt "extensions" aktivieren und konfigurieren Sie zusätzliche Fähigkeiten für Zugriffsrechte.

{
    "policies: [],
    ...
    "extensions": {                 // optional
        "<extension_name>" : { }    // extension configuration
    }
}

Im Abschnitt Erweiterungen können Sie mehr über verfügbare Erweiterungen und deren Konfiguration erfahren.