Zum Inhalt

Arten und Aktionen

Diese Seite ist zum Nachschlagen: wie eine Regel aussieht, welche Arten von Dingen eine Regel nennen kann und was jede Aktion auf jeder Art bedeutet. Was Regeln und Rollen sind, steht unter Rollen und Zugriff.

Eine Regel

{"id": "own-department", "effect": "permit", "kind": "membership",
 "actions": ["see", "write"],
 "match": {"labels": {"office": "utrecht"}},
 "when": [{"atom": "label_among", "label": "department", "attribute": "department"}]}
Teil Bedeutung
effect permit erlaubt, forbid verbietet
kind die Art von Ding, um die es in der Regel geht (OS, KI-Funktionen)
actions see, use, write, delete; weglassen ist jede Aktion, die die Art kennt
match.names Muster, von denen eines auf den Namen des Dings passen muss: *, ? und [a-z], Groß- und Kleinschreibung beachtet; weglassen ist jeder Name
match.labels Labels, die das Ding tragen muss, jedes mit diesem Wert unter seinen Werten; höchstens 16
when Bedingungen an die Person, die alle zutreffen müssen; höchstens 16
id optional: ein eigener Name für die Regel, Kleinbuchstaben, Ziffern und -, mit einem Buchstaben beginnend, eindeutig im Dokument; eine Ablehnung nennt die Regel mit dieser ID

Eine Bedingung in when ist eine von dreien:

Bedingung Trifft zu, wenn
{"atom": "label_is_subject", "label": "subject"} die Person selbst unter den Werten dieses Labels auf dem Ding steht: „das gehört mir“
{"atom": "label_among", "label": "department", "attribute": "department"} mindestens ein Wert des Labels auf dem Ding auch ein Wert des Attributs der Person ist
{"atom": "attribute_has", "attribute": "role", "value": "org-admin"} das Attribut der Person diesen Wert hat; liest nichts vom Ding

Die Attribute, die eine Bedingung lesen kann, sind role (der Name einer eingebauten Rolle oder die ID rol_... einer eigenen Rolle), group (die ID grp_... einer Gruppe) und jedes Attribut, das die Organisation oder eine Organisation darüber festgelegt hat. Eine Bedingung auf ein anderes Attribut lehnt OS ab.

Wie OS entscheidet

  • Nichts ist erlaubt ohne ein passendes permit; ein passendes forbid lehnt immer ab. Die Reihenfolge spielt keine Rolle.
  • Eine Regel passt, wenn ihr ganzes match für das Ding und ihr ganzes when für die Person zutrifft. Es gibt kein „oder“ und kein „nicht“: Zwei mögliche Werte sind zwei Regeln.
  • Labels und Attribute sind Mengen von Werten. Ein Ding ohne das Label passt auf keinen Test dieses Labels.
  • Keine Aktion schließt eine andere ein. OS fragt zuerst see; was die Person nicht sehen darf, existiert für sie nicht (404).
  • Etwas anlegen ist ein write, entschieden anhand der Labels in der Anfrage. Beim Ändern von Labels wird anhand der alten und der neuen Labels entschieden.

Grenzen und Einschränkungen

Wo Grenze
Regeldokument höchstens 500 Regeln und 2.000 Namensmuster zusammen
eigene Rolle höchstens 200 Regeln, jede höchstens 15 Bedingungen
eine Regel höchstens 200 Namensmuster, 16 Label-Tests, 16 Bedingungen
Organisation höchstens 100 eigene Rollen und 16 Attribute; alles, was die Organisation und die Organisationen darüber zusammen geben, höchstens 500 Regeln in den KI-Funktionen; die Organisation und jede Organisation darunter zusammen höchstens 32 Attribute und Labels, die Regeln lesen (409 darüber)

Außerdem lehnt OS ab:

  • ein forbid über organisation, membership, invitation, group, role, rule oder attribute: Für die Verwaltung schreiben Sie nur, was erlaubt ist;
  • eine Regel über placement außerhalb der obersten Organisation;
  • ein attribute_has mit einem Wert außerhalb der festen Liste des Attributs, auch wenn eine Organisation darüber es festlegte;
  • eine Bedingung auf ein Attribut, das niemand festgelegt hat;
  • eine Regel über eine Art von OS mit einer Aktion, die die Art nicht kennt: Jede Art nimmt nur die Aktionen, die in ihrer Zeile stehen, sodass zum Beispiel use auf group oder membership nicht möglich ist;
  • eine Regel über die KI-Funktionen mit einem Teil, den die Art nicht nimmt (unten);
  • in einer eigenen Rolle: eine Regel über router, egress_host, artifact_download, share_link oder memory_write.

Jede dieser Ablehnungen ist ein 422 beim Schreiben; es ändert sich nichts.

Eine Regel, die erlaubt, was nicht im Dienst der Organisation ist, lehnt OS mit 403 ab (This is not part of your organisation's service.): in einer eigenen Rolle, im Regeldokument und wenn Sie eine eigene Rolle oder eine Gruppe mit einer solchen Rolle vergeben. Eine eingebaute Rolle vergeben Sie immer; der Dienst macht sie nur kleiner.

Im Dienst

Ein Plan oder eine Ausnahme nennt Arten mit ihren Aktionen, wie eine Regel, aber ohne match und when. Diese Arten sind in jedem Dienst und in keinem Plan: organisation, membership, invitation, group, role, rule, attribute, audit_event, service, webhook, event, export und notification_channel, und außerdem placement und service_plan, die nur Artific verwaltet. Einen Plan oder eine Ausnahme, die eine dieser Arten nennt, lehnt OS mit 422 ab. Jede andere Art ist nur im Dienst, wenn ein Plan oder eine Ausnahme sie gibt, ebenso wie die Arten der Anmeldung Ihres Unternehmens, domain und sign_in.

Ein Bestandteil nennt nur Aktionen, die die Art kennt: bei den Arten von OS die in ihrer Zeile, bei denen der KI-Funktionen die in ihrer Tabelle. So nimmt thread kein use. Die Arten ohne Aktionen (router, egress_host, artifact_download, share_link, memory_write) sind ganz im Dienst oder nicht: Ein Bestandteil dazu nennt keine actions. Sonst lehnt OS den Plan oder die Ausnahme mit 422 ab.

Die Arten von OS

Art Das Ding see use write delete
organisation die Organisation, ihre Einstellungen und eine Organisation darunter sie sehen, die Organisationen darunter sehen — ihre Einstellungen ändern; eine Organisation darunter anlegen sie löschen
membership ein Mitglied Mitglieder sehen — einladen, deaktivieren, reaktivieren, Attribute geben entfernen
invitation eine offene Einladung sehen — erneut senden zurückziehen
group eine Gruppe sehen — anlegen, umbenennen, Mitglieder hinzufügen und entfernen, Rollen und Werte geben löschen
role eine eingebaute oder eigene Rolle sehen einem Mitglied oder einer Gruppe geben oder zurücknehmen eine eigene Rolle anlegen oder ändern eine eigene Rolle löschen
rule das Regeldokument lesen — ersetzen —
attribute ein Attribut sehen seine Werte anderen geben festlegen oder ändern löschen
audit_event eine Zeile des Prüfprotokolls das Prüfprotokoll lesen — — —
placement wo die Daten einer Organisation liegen — — einstellen —
domain eine nachgewiesene E-Mail-Domain sehen — hinzufügen und nachweisen aufgeben
sign_in die Anmeldung Ihres Unternehmens sehen — hinzufügen und verknüpfen trennen
service der Dienst der Organisation: ihre Pläne, Ausnahmen, Testzeiträume und das Enddatum einer Demo lesen — Pläne und Ausnahmen vergeben und entfernen, das Enddatum einer Demo setzen; entschieden in der Organisation darüber —
service_plan ein Plan von Artific sehen — anlegen, ändern löschen
webhook ein Webhook der Organisation und seine Zustellungen sehen, nie das Geheimnis — registrieren, ändern, das Geheimnis ersetzen, einschalten, testen, erneut zustellen entfernen
event die Ereignisse der Organisation den Feed lesen und eine Zustellung empfangen — — —
export ein Export der Organisation oder eines Mitglieds die Exporte der Organisation sehen sie herunterladen einen anfordern —
notification_channel ein Slack-Kanal, den die Organisation verbunden hat sehen, nie die Adresse — verbinden, ändern, testen trennen
direct_chat der Schalter der Chats, die an eine Kollegin übergeben wurden; die eingebaute Rolle consultant hat ihn den Schalter sehen und einen Chat darauf lesen einen Chat übernehmen, antworten, freigeben, zurückgeben — eine wartende Anfrage schließen
improvement die Verbesserungsvorschläge der Organisation, ihre Einstellungen und die Analysen die Einstellungen, die Analysen und jeden Vorschlag lesen — die Einstellungen ändern, eine Analyse starten, einen Vorschlag annehmen, verwerfen oder wieder öffnen —

Eine Art nimmt nur die Aktionen, die in ihrer Zeile stehen: service nur see und write, und organisation, membership, invitation, group, domain und sign_in kein use. Eine Regel, einen Plan oder eine Ausnahme, die eine andere Aktion nennt, lehnt OS mit 422 ab. Eine Regel ohne actions gilt für die Aktionen, die die Art kennt, und allowed_actions nennt nie eine andere.

placement und service_plan entscheidet OS nur für den, der aus der obersten Organisation handelt. Ein write auf service entscheidet OS in der Organisation darüber, für den, der dort org-admin mit Reichweite descendants hat (wie).

Was match bei einem Ding von OS liest:

Art match.labels liest match.names liest
membership die Tatsachen des Mitglieds: role, group, jedes Attribut und subject, das Mitglied selbst —
group, role die Labels darauf (höchstens 32); jede eingebaute Rolle trägt builtin: true den Namen
organisation ihre Labels, die die Organisation darüber setzt den Namen
attribute — den Namen

Die Arten der KI-Funktionen

Diese Arten betreffen, was Mitglieder in den KI-Funktionen tun. Sie stehen in CoreAccessKind.

Art Worüber eine Regel entscheidet Aktionen
model welche Modelle ein Gespräch nutzt see, use
tool welche Tools das Modell bekommt und aufrufen darf see, use, write, delete
prompt, skill, agent, schedule, workflow welche Prompts, Skills, Agents, Zeitpläne und Workflows jemand erreicht see, use, write, delete
knowledge_collection, knowledge_index, knowledge_graph, knowledge_table_set welche Wissenssammlungen, Indizes, Wissensgraphen und Tabellensätze jemand erreicht see, use, write, delete
file, datastore welche Dateien und Datastores jemand per Namen erreicht see, use, write, delete
thread welche Gespräche jemand erreicht see, write, delete
memory_record welches Gedächtnis jemand erreicht see, write, delete
knowledge_source welche Wissensquellen eine Suche findet see, write, delete
stored_file welche gespeicherten Dateien und Uploads jemand erreicht see, write, delete
datastore_record welche Zeilen eines Datastores jemand erreicht see, write, delete
router welche Modell-Router genutzt werden keine
egress_host welche externen Adressen erreichbar sind keine
artifact_download ob Dateien, die ein Tool erstellt hat, heruntergeladen werden dürfen keine
share_link ob gespeicherte Dateien und Seiten über einen Link geteilt werden dürfen keine
memory_write ob die KI-Funktionen Gedächtnis schreiben dürfen keine

Eine Art ohne Aktionen kennt keine actions: Die Regel betrifft die Art als Ganzes.

Nicht jede Art nimmt jeden Teil einer Regel. Eine Regel mit einem Teil, den die Art nicht nimmt, oder mit einer Aktion, die sie nicht kennt, lehnt OS mit 422 ab, wenn Sie sie schreiben:

  • Zeilen (thread, memory_record, knowledge_source, stored_file, datastore_record) haben keinen Namen, also kein match.names. Das Label subject ist, wer die Zeile angelegt hat; ein leeres subject ("") ist eine gemeinsame Zeile. Bei den KI-Funktionen lesen Sie das Label subject nur auf Zeilen.
  • file und datastore tragen keine Labels, also kein match.labels, und als Bedingung nur attribute_has.
  • Für die ganze Organisation (router, egress_host, artifact_download, share_link, memory_write): keine Bedingung an die Person (when), und deshalb nur im Regeldokument, nie in einer Rolle (wie). Sie nehmen keine Labels; egress_host nimmt match.names für die Adressen. Modell-Router und Downloads erreichen standardmäßig jedes Mitglied; Gedächtnis schreiben und Teilen über einen Link niemanden, bis das Regeldokument sie erlaubt.