Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Größe der Richtlinie pro Ressource
Verifizierte Berechtigungen begrenzen die Gesamtgröße aller Richtlinien, die auf dieselbe Ressource verweisen. Bei diesem Limit handelt es sich um die Richtliniengröße pro Ressourcenkontingent. Der Standardwert beträgt 200.000 Byte. Wenn Sie CreatePolicy oder aufrufenUpdatePolicy, berechnet Verified Permissions die neue Summe für die Ressource, auf die verwiesen wird. Wenn die neue Summe das Kontingent überschreitet, schlägt die Anfrage mit einem ServiceQuotaExceededException fehl.
Richtlinien, die keine Ressource angeben, gelten für alle Ressourcen. Diese Richtlinien teilen sich eine separate Gesamtsumme für die "unspecified" Ressource, die auf denselben Kontingentwert begrenzt ist.
Eine Liste aller Kontingente für verifizierte Berechtigungen finden Sie unterKontingente für von Amazon verifizierte Berechtigungen.
Themen
Wie werden die Versicherungssummen berechnet
Jede Richtlinie trägt wie folgt zur Gesamtsumme einer Ressource bei:
-
Statische Richtlinien — Eine statische Richtlinie trägt ihren vollen Umfang bei. Dies ist derselbe Wert, der anhand der Größenquote für Richtlinien gemessen wird.
-
Template-linked Richtlinien — Bei einer mit einer Vorlage verknüpften Richtlinie wird die kombinierte Länge des Prinzips und der Ressourcen berechnet, die zu ihrer Instanziierung verwendet wurden. Wenn Sie den Prinzipal oder die Ressource nicht angeben, wird deren Länge als 0 gezählt. Die Größe des Hauptteils der Richtlinienvorlage selbst wird nicht auf dieses Kontingent angerechnet.
Jede Richtlinie erhöht die Gesamtsumme außerdem um einen festen Overhead von bis zu einigen hundert Byte. Template-linked Richtlinien verursachen mehr Overhead als statische Richtlinien.
Innerhalb der Quote bleiben
Wenn sich Ihre Anwendung der Richtliniengröße pro Ressourcenkontingent nähert, sollten Sie die folgenden Strategien in Betracht ziehen:
-
Verwenden Sie den entsprechenden Richtlinientyp. Wenn viele Richtlinien ähnliche Berechtigungen für dieselbe Ressource gewähren, reduzieren Richtlinienvorlagen möglicherweise den Speicherverbrauch Ihres Richtlinienspeichers. Jede mit einer Vorlage verknüpfte Richtlinie speichert nur ihren Prinzipal und ihre Ressource. In der Richtlinienvorlage wird die gemeinsame Abrechnung einmal gespeichert, aber für jede verknüpfte Richtlinie ist auch ein fester Speicheraufwand erforderlich. Vorlagen amortisieren sich nur, wenn die gemeinsame Abrechnung groß genug ist, um diesen Overhead, etwa 200 Byte oder mehr, auszugleichen. Unterhalb dieses Schwellenwerts verbrauchen einzelne statische Richtlinien weniger Speicherplatz. Weitere Informationen finden Sie unter Richtlinienvorlagen für Amazon Verified Permissions und Richtlinien, die mit Vorlagen verknüpft sind.
-
Geben Sie Prinzipale und Ressourcen im Geltungsbereich der Richtlinie an. Richtlinien, die keine Ressource angeben, teilen sich eine einzige Summe für die
"unspecified"Ressource im Richtlinienspeicher. Wenn Sie jede Richtlinie auf eine bestimmte Ressource beschränken, verteilen sich Ihre Richtlinien auf separate Summen, eine für jede Ressource. -
Gruppieren Sie Ihre Grundsätze und Ressourcen. Anstatt eine Richtlinie für jeden Principal zu schreiben, schreiben Sie eine Policy für eine Gruppe und fügen Sie Principals zur Gruppe hinzu. Durch das Gruppieren von Ressourcen in Containern kann auf ähnliche Weise die Anzahl der Richtlinien reduziert werden, die auf eine einzelne Ressource verweisen.
-
Anfordern einer Kontingenterhöhung. Sie können eine Erhöhung dieses Kontingents beantragen, wenn Ihr Richtlinienentwurf bestimmte Einschränkungen erfüllt. Um in Frage zu kommen, müssen Ihre Policen den Prinzipal oder die Ressource im Geltungsbereich der Richtlinie angeben. Eine Erhöhung könnte auch die Anzahl der übergeordneten Hierarchieebenen verringern, die Ihren Schulleitern und Ressourcen untergeordnet sein können. Selbst bei einem erhöhten Kontingent gilt eine Untergrenze von 200.000 Byte immer noch für Richtlinien, die auf denselben Prinzipal und dieselbe Ressource verweisen. Sie können keine Erhöhung dieses Unterlimits beantragen.
Template-linked Beispiel für eine Versicherungsgröße
Um herauszufinden, wie Richtlinien, die mit einer Vorlage verknüpft sind, zur Höhe der Richtlinie pro Ressourcenkontingent beitragen, fügen Sie die Länge des Prinzips und die Länge der Ressource hinzu. Wenn Sie keine Ressource angeben, wird deren Größe von „Verified Permissions“ auf die Gesamtmenge der "unspecified" Ressource angerechnet.
Prüfen Sie die folgende Vorlage:
permit ( principal in ?principal, action in [MyApplication::Action::"ContentManagement", MyApplication::Action::"AccountAdministration", MyApplication::Action::"BillingOperations"], resource in ?resource ) when { resource has authorizedTenantIds && principal has tenantId && resource.authorizedTenantIds.contains(principal.tenantId) };
Erstellen Sie die folgenden Richtlinien anhand dieser Vorlage:
TemplateLinkedPolicy { policyId: "policy1", templateId: "template1", principal: User::"alice", resource: Photo::"car.jpg" } TemplateLinkedPolicy { policyId: "policy2", templateId: "template1", principal: User::"bob", resource: Photo::"boat.jpg" } TemplateLinkedPolicy { policyId: "policy3", templateId: "template1", principal: User::"jane", resource: Photo::"car.jpg" } TemplateLinkedPolicy { policyId: "policy4", templateId: "template1", principal: User::"jane", resource }
Berechnen Sie die Größe dieser Richtlinien, indem Sie die Byte in principal und resource für jede einzelne zählen. Verified Permissions misst die Größe in UTF-8 Byte. Zeichen im druckbaren ASCII-Bereich zählen jeweils als 1 Byte, für andere Zeichen können jedoch mehr Byte verwendet werden. In den folgenden Beispielen werden nur ASCII-Zeichen verwendet, sodass jedes Zeichen als 1 Byte zählt. Diese Berechnungen schließen den festen Overhead aus. Ihre tatsächlichen Summen werden höher sein.
Die Größe von policy1 entspricht der Länge des User::"alice" Prinzips (13) plus der Länge der Ressource Photo::"car.jpg" (16). Die Summe ist 13 + 16 = 29 Byte.
Die Größe von policy2 ist die Länge des User::"bob" Prinzips (11) plus die Länge der Ressource Photo::"boat.jpg" (17). Die Summe ist 11 + 17 = 28 Byte.
Die Größe von policy3 entspricht der Länge des User::"jane" Prinzips (12) plus der Länge der Ressource Photo::"car.jpg" (16). Die Summe ist 12 + 16 = 28 Byte.
Die Größe von policy4 entspricht der Länge des User::"jane" Prinzips (12) plus der Länge der Ressource (0). Die Summe ist 12 + 0 = 12 Byte.
Da policy2 es sich um die einzige Richtlinie handelt, die auf die Ressource verweistPhoto::"boat.jpg", beträgt die Gesamtgröße der Ressource 28 Byte.
Da policy1 policy3 beide auf die Ressource verweisenPhoto::"car.jpg", beträgt die Gesamtressourcengröße 29 + 28 = 57 Byte.
Weil policy4 es die einzige Richtlinie ist, die auf die "unspecified" Ressource verweist, beträgt die Gesamtgröße der Ressource 12 Byte.