Weitere AWS SDK Beispiele sind im Repo AWS Doc SDK Examples
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.
Beispiele für verifizierte Berechtigungen mit AWS CLI
Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe von AWS Command Line Interface with Verified Permissions Aktionen ausführen und gängige Szenarien implementieren.
Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Aktionen zeigen Ihnen zwar, wie Sie einzelne Servicefunktionen aufrufen, aber Sie können Aktionen in den zugehörigen Szenarien im Kontext sehen.
Jedes Beispiel enthält einen Link zum vollständigen Quellcode, in dem Sie Anweisungen zum Einrichten und Ausführen des Codes im Kontext finden.
Themen
Aktionen
Das folgende Codebeispiel zeigt die Verwendungcreate-identity-source
.
- AWS CLI
-
Um eine Identitätsquelle zu erstellen
Im folgenden
create-identity-source
Beispiel wird eine Identitätsquelle erstellt, mit der Sie auf Identitäten verweisen können, die im angegebenen Amazon Cognito Cognito-Benutzerpool gespeichert sind. Diese Identitäten sind in Verified Permissions als Entitäten des Typs verfügbar.User
aws verifiedpermissions create-identity-source \ --configuration
file://config.txt
\ --principal-entity-type"User"
\ --policy-store-idPSEXAMPLEabcdefg111111
Inhalt von
config.txt
:{ "cognitoUserPoolConfiguration": { "userPoolArn": "arn:aws:cognito-idp:us-west-2:123456789012:userpool/us-west-2_1a2b3c4d5", "clientIds":["a1b2c3d4e5f6g7h8i9j0kalbmc"] } }
Ausgabe:
{ "createdDate": "2023-05-19T20:30:28.214829+00:00", "identitySourceId": "ISEXAMPLEabcdefg111111", "lastUpdatedDate": "2023-05-19T20:30:28.214829+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111" }
Weitere Informationen zu Identitätsquellen finden Sie unter Verwenden von Amazon Verified Permissions mit Identitätsanbietern im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie CreateIdentitySource
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungcreate-policy-store
.
- AWS CLI
-
Um einen Richtlinienspeicher zu erstellen
Im folgenden
create-policy-store
Beispiel wird ein Richtlinienspeicher in der aktuellen AWS Region erstellt.aws verifiedpermissions create-policy-store \ --validation-settings
"mode=STRICT"
Ausgabe:
{ "arn": "arn:aws:verifiedpermissions::123456789012:policy-store/PSEXAMPLEabcdefg111111", "createdDate": "2023-05-16T17:41:29.103459+00:00", "lastUpdatedDate": "2023-05-16T17:41:29.103459+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111" }
Weitere Informationen zu Policy Stores finden Sie unter Amazon Verified Permissions Policy Stores im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie CreatePolicyStore
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungcreate-policy-template
.
- AWS CLI
-
Beispiel 1: Um eine Richtlinienvorlage zu erstellen
Im folgenden
create-policy-template
Beispiel wird eine Richtlinienvorlage mit einer Anweisung erstellt, die einen Platzhalter für den Prinzipal enthält.aws verifiedpermissions create-policy-template \ --definition
file://template1.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Inhalt der Datei
template1.txt
:permit( principal in ?principal, action == Action::"view", resource == Photo::"VacationPhoto94.jpg" );
Ausgabe:
{ "createdDate": "2023-06-12T20:47:42.804511+00:00", "lastUpdatedDate": "2023-06-12T20:47:42.804511+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyTemplateId": "PTEXAMPLEabcdefg111111" }
Weitere Informationen zu Richtlinienvorlagen finden Sie unter Richtlinienvorlagen von Amazon Verified Permissions im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie CreatePolicyTemplate
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungcreate-policy
.
- AWS CLI
-
Beispiel 1: Um eine statische Richtlinie zu erstellen
Im folgenden
create-policy
Beispiel wird eine statische Richtlinie mit einem Richtlinienbereich erstellt, der sowohl einen Prinzipal als auch eine Ressource angibt.aws verifiedpermissions create-policy \ --definition
file://definition1.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Inhalt der Datei
definition1.txt
:{ "static": { "description": "Grant everyone of janeFriends UserGroup access to the vacationFolder Album", "statement": "permit(principal in UserGroup::\"janeFriends\", action, resource in Album::\"vacationFolder\" );" } }
Ausgabe:
{ "createdDate": "2023-06-12T20:33:37.382907+00:00", "lastUpdatedDate": "2023-06-12T20:33:37.382907+00:00", "policyId": "SPEXAMPLEabcdefg111111", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyType": "STATIC", "principal": { "entityId": "janeFriends", "entityType": "UserGroup" }, "resource": { "entityId": "vacationFolder", "entityType": "Album" } }
Beispiel 2: Um eine statische Richtlinie zu erstellen, die allen Benutzern Zugriff auf eine Ressource gewährt
Im folgenden
create-policy
Beispiel wird eine statische Richtlinie mit einem Richtlinienbereich erstellt, der nur eine Ressource angibt.aws verifiedpermissions create-policy \ --definition
file://definition2.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Inhalt der Datei
definition2.txt
:{ "static": { "description": "Grant everyone access to the publicFolder Album", "statement": "permit(principal, action, resource in Album::\"publicFolder\");" } }
Ausgabe:
{ "createdDate": "2023-06-12T20:39:44.975897+00:00", "lastUpdatedDate": "2023-06-12T20:39:44.975897+00:00", "policyId": "PbfR73F8oh5MMfr9uRtFDB", "policyStoreId": "PSEXAMPLEabcdefg222222", "policyType": "STATIC", "resource": { "entityId": "publicFolder", "entityType": "Album" } }
Beispiel 3: Um eine mit einer Vorlage verknüpfte Richtlinie zu erstellen, die der angegebenen Vorlage zugeordnet ist
Das folgende
create-policy
Beispiel erstellt eine mit einer Vorlage verknüpfte Richtlinie unter Verwendung der angegebenen Richtlinienvorlage und ordnet den angegebenen Prinzipal, der verwendet werden soll, der neuen, mit der Vorlage verknüpften Richtlinie zu.aws verifiedpermissions create-policy \ --definition
file://definition.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Inhalt von
definition.txt
:{ "templateLinked": { "policyTemplateId": "PTEXAMPLEabcdefg111111", "principal": { "entityType": "User", "entityId": "alice" } } }
Ausgabe:
{ "createdDate": "2023-06-12T20:49:51.490211+00:00", "lastUpdatedDate": "2023-06-12T20:49:51.490211+00:00", "policyId": "TPEXAMPLEabcdefg111111", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyType": "TEMPLATE_LINKED", "principal": { "entityId": "alice", "entityType": "User" }, "resource": { "entityId": "VacationPhoto94.jpg", "entityType": "Photo" } }
Weitere Informationen zu Richtlinien finden Sie unter Richtlinien von Amazon Verified Permissions im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie CreatePolicy
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungdelete-identity-source
.
- AWS CLI
-
Um eine Identitätsquelle zu löschen
Im folgenden
delete-identity-source
Beispiel wird die Identitätsquelle mit der angegebenen ID gelöscht.aws verifiedpermissions delete-identity-source \ --identity-source-id
ISEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zu Identitätsquellen finden Sie unter Verwenden von Amazon Verified Permissions mit Identitätsanbietern im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie DeleteIdentitySource
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungdelete-policy-store
.
- AWS CLI
-
Um einen Richtlinienspeicher zu löschen
Im folgenden
delete-policy-store
Beispiel wird der Richtlinienspeicher mit der angegebenen ID gelöscht.aws verifiedpermissions delete-policy-store \ --policy-store-id
PSEXAMPLEabcdefg111111
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zu Policy Stores finden Sie unter Amazon Verified Permissions Policy Stores im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie DeletePolicyStore
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungdelete-policy-template
.
- AWS CLI
-
Um eine Richtlinienvorlage zu löschen
Im folgenden
delete-policy-template
Beispiel wird die Richtlinienvorlage mit der angegebenen ID gelöscht.aws verifiedpermissions delete-policy \ --policy-template-id
PTEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zu Richtlinienvorlagen finden Sie unter Richtlinienvorlagen von Amazon Verified Permissions im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie DeletePolicyTemplate
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungdelete-policy
.
- AWS CLI
-
Um eine statische oder mit einer Vorlage verknüpfte Richtlinie zu löschen
Im folgenden
delete-policy
Beispiel wird die Richtlinie mit der angegebenen ID gelöscht.aws verifiedpermissions delete-policy \ --policy-id
SPEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zu Richtlinien finden Sie unter Richtlinien von Amazon Verified Permissions im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie DeletePolicy
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungget-identity-source
.
- AWS CLI
-
Um Details zu einer Identitätsquelle abzurufen
Im folgenden
get-identity-source
Beispiel werden die Details für die Identitätsquelle mit der angegebenen ID angezeigt.aws verifiedpermissions get-identity-source \ --identity-source
ISEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Ausgabe:
{ "createdDate": "2023-06-12T22:27:49.150035+00:00", "details": { "clientIds": [ "a1b2c3d4e5f6g7h8i9j0kalbmc" ], "discoveryUrl": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_1a2b3c4d5", "openIdIssuer": "COGNITO", "userPoolArn": "arn:aws:cognito-idp:us-west-2:123456789012:userpool/us-west-2_1a2b3c4d5" }, "identitySourceId": "ISEXAMPLEabcdefg111111", "lastUpdatedDate": "2023-06-12T22:27:49.150035+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111", "principalEntityType": "User" }
Weitere Informationen zu Identitätsquellen finden Sie unter Verwenden von Amazon Verified Permissions mit Identitätsanbietern im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie GetIdentitySource
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungget-policy-store
.
- AWS CLI
-
Um Details zu einem Richtlinienspeicher abzurufen
Im folgenden
get-policy-store
Beispiel werden die Details für den Richtlinienspeicher mit der angegebenen ID angezeigt.aws verifiedpermissions get-policy-store \ --policy-store-id
PSEXAMPLEabcdefg111111
Ausgabe:
{ "arn": "arn:aws:verifiedpermissions::123456789012:policy-store/PSEXAMPLEabcdefg111111", "createdDate": "2023-06-05T20:16:46.225598+00:00", "lastUpdatedDate": "2023-06-08T20:40:23.173691+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111", "validationSettings": { "mode": "OFF" } }
Weitere Informationen zu Policy Stores finden Sie unter Amazon Verified Permissions Policy Stores im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie GetPolicyStore
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungget-policy-template
.
- AWS CLI
-
Um Details zu einer Richtlinienvorlage abzurufen
Im folgenden
get-policy-template
Beispiel werden die Details für die Richtlinienvorlage mit der angegebenen ID angezeigt.aws verifiedpermissions get-policy-template \ --policy-template-id
PTEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Ausgabe:
{ "createdDate": "2023-06-12T20:47:42.804511+00:00", "lastUpdatedDate": "2023-06-12T20:47:42.804511+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyTemplateId": "PTEXAMPLEabcdefg111111", "statement": "permit(\n principal in ?principal,\n action == Action::\"view\",\n resource == Photo::\"VacationPhoto94.jpg\"\n);" }
Weitere Informationen zu Richtlinienvorlagen finden Sie unter Richtlinienvorlagen von Amazon Verified Permissions im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie GetPolicyTemplate
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungget-policy
.
- AWS CLI
-
Um Details zu einer Richtlinie abzurufen
Im folgenden
get-policy
Beispiel werden die Details für die Richtlinie mit der angegebenen ID angezeigt.aws verifiedpermissions get-policy \ --policy-id
PSEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Ausgabe:
{ "createdDate": "2023-06-12T20:33:37.382907+00:00", "definition": { "static": { "description": "Grant everyone of janeFriends UserGroup access to the vacationFolder Album", "statement": "permit(principal in UserGroup::\"janeFriends\", action, resource in Album::\"vacationFolder\" );" } }, "lastUpdatedDate": "2023-06-12T20:33:37.382907+00:00", "policyId": "SPEXAMPLEabcdefg111111", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyType": "STATIC", "principal": { "entityId": "janeFriends", "entityType": "UserGroup" }, "resource": { "entityId": "vacationFolder", "entityType": "Album" } }
Weitere Informationen zu Richtlinien finden Sie unter Richtlinien von Amazon Verified Permissions im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie GetPolicy
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungget-schema
.
- AWS CLI
-
Um das Schema in einem Richtlinienspeicher abzurufen
Im folgenden
get-schema
Beispiel werden die Details des Schemas im angegebenen Richtlinienspeicher angezeigt.aws verifiedpermissions get-schema \ --policy-store-id
PSEXAMPLEabcdefg111111
Ausgabe:
{ "policyStoreId": "PSEXAMPLEabcdefg111111", "schema": "{\"MySampleNamespace\":{\"entityTypes\":{\"Employee\":{\"shape\":{\"attributes\":{\"jobLevel\":{\"type\":\"Long\"},\"name\":{\"type\":\"String\"}},\"type\":\"Record\"}}},\"actions\":{\"remoteAccess\":{\"appliesTo\":{\"principalTypes\":[\"Employee\"]}}}}}", "createdDate": "2023-06-14T17:47:13.999885+00:00", "lastUpdatedDate": "2023-06-14T17:47:13.999885+00:00" }
Weitere Informationen zum Schema finden Sie unter Policy Store Schema im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie GetSchema
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungis-authorized-with-token
.
- AWS CLI
-
Beispiel 1: Um eine Autorisierungsentscheidung für eine Benutzeranfrage anzufordern (zulassen)
Im folgenden
is-authorized-with-token
Beispiel wird eine Autorisierungsentscheidung für einen Benutzer angefordert, der von Amazon Cognito authentifiziert wurde. Die Anfrage verwendet das von Cognito bereitgestellte Identitätstoken und nicht das Zugriffstoken. In diesem Beispiel ist der angegebene Informationsspeicher so konfiguriert, dass er Prinzipale als Entitäten des Typs zurückgibt.CognitoUser
aws verifiedpermissions is-authorized-with-token \ --action actionId="View",actionType="Action" \ --resource entityId="vacationPhoto94.jpg",entityType="Photo" \ --policy-store-id
PSEXAMPLEabcdefg111111
\ --identity-token"AbCdE12345...long.string...54321EdCbA"
Der Richtlinienspeicher enthält eine Richtlinie mit der folgenden Anweisung, die Identitäten aus dem angegebenen Cognito-Benutzerpool und der angegebenen Anwendungs-ID akzeptiert.
permit( principal == CognitoUser::"us-east-1_1a2b3c4d5|a1b2c3d4e5f6g7h8i9j0kalbmc", action, resource == Photo::"VacationPhoto94.jpg" );
Ausgabe:
{ "decision":"Allow", "determiningPolicies":[ { "determiningPolicyId":"SPEXAMPLEabcdefg111111" } ], "errors":[] }
Weitere Informationen zur Verwendung von Identitäten aus einem Cognito-Benutzerpool finden Sie unter Verwenden von Amazon Verified Permissions with Identity Providers im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie IsAuthorizedWithToken
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungis-authorized
.
- AWS CLI
-
Beispiel 1: Um eine Autorisierungsentscheidung für eine Benutzeranfrage anzufordern (zulassen)
Im folgenden
is-authorized
Beispiel wird eine Autorisierungsentscheidung für einen Principal des TypsUser
„Named“Alice
, der denupdatePhoto
Vorgang ausführen möchte, für eine Ressource des TypsPhoto
„Named“ angefordertVacationPhoto94.jpg
.Die Antwort zeigt, dass die Anforderung durch eine Richtlinie zugelassen ist.
aws verifiedpermissions is-authorized \ --principal
entityType=User,entityId=alice
\ --actionactionType=Action,actionId=view
\ --resourceentityType=Photo,entityId=VactionPhoto94.jpg
\ --policy-store-idPSEXAMPLEabcdefg111111
Ausgabe:
{ "decision": "ALLOW", "determiningPolicies": [ { "policyId": "SPEXAMPLEabcdefg111111" } ], "errors": [] }
Beispiel 2: Um eine Autorisierungsentscheidung für eine Benutzeranfrage anzufordern (ablehnen)
Das folgende Beispiel entspricht dem vorherigen Beispiel, mit dem Unterschied, dass es der Prinzipal ist
User::"Bob"
. Der Richtlinienspeicher enthält keine Richtlinie, die diesem Benutzer Zugriff auf gewährtAlbum::"alice_folder"
.Die Ausgabe gibt an, dass das implizit
Deny
war, weil die Liste von leerDeterminingPolicies
ist.aws verifiedpermissions create-policy \ --definition
file://definition2.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Ausgabe:
{ "decision": "DENY", "determiningPolicies": [], "errors": [] }
Weitere Informationen finden Sie im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie IsAuthorized
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendunglist-identity-sources
.
- AWS CLI
-
Um die verfügbaren Identitätsquellen aufzulisten
Im folgenden
list-identity-sources
Beispiel werden alle Identitätsquellen im angegebenen Richtlinienspeicher aufgeführt.aws verifiedpermissions list-identity-sources \ --policy-store-id
PSEXAMPLEabcdefg111111
Ausgabe:
{ "identitySources": [ { "createdDate": "2023-06-12T22:27:49.150035+00:00", "details": { "clientIds": [ "a1b2c3d4e5f6g7h8i9j0kalbmc" ], "discoveryUrl": "https://cognito-idp.us-west-2.amazonaws.com/us-west-2_1a2b3c4d5", "openIdIssuer": "COGNITO", "userPoolArn": "arn:aws:cognito-idp:us-west-2:123456789012:userpool/us-west-2_1a2b3c4d5" }, "identitySourceId": "ISEXAMPLEabcdefg111111", "lastUpdatedDate": "2023-06-12T22:27:49.150035+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111", "principalEntityType": "User" } ] }
Weitere Informationen zu Identitätsquellen finden Sie unter Verwenden von Amazon Verified Permissions mit Identitätsanbietern im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie ListIdentitySources
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendunglist-policies
.
- AWS CLI
-
Um die verfügbaren Richtlinien aufzulisten
Im folgenden
list-policies
Beispiel werden alle Richtlinien im angegebenen Richtlinienspeicher aufgeführt.aws verifiedpermissions list-policies \ --policy-store-id
PSEXAMPLEabcdefg111111
Ausgabe:
{ "policies": [ { "createdDate": "2023-06-12T20:33:37.382907+00:00", "definition": { "static": { "description": "Grant everyone of janeFriends UserGroup access to the vacationFolder Album" } }, "lastUpdatedDate": "2023-06-12T20:33:37.382907+00:00", "policyId": "SPEXAMPLEabcdefg111111", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyType": "STATIC", "principal": { "entityId": "janeFriends", "entityType": "UserGroup" }, "resource": { "entityId": "vacationFolder", "entityType": "Album" } }, { "createdDate": "2023-06-12T20:39:44.975897+00:00", "definition": { "static": { "description": "Grant everyone access to the publicFolder Album" } }, "lastUpdatedDate": "2023-06-12T20:39:44.975897+00:00", "policyId": "SPEXAMPLEabcdefg222222", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyType": "STATIC", "resource": { "entityId": "publicFolder", "entityType": "Album" } }, { "createdDate": "2023-06-12T20:49:51.490211+00:00", "definition": { "templateLinked": { "policyTemplateId": "PTEXAMPLEabcdefg111111" } }, "lastUpdatedDate": "2023-06-12T20:49:51.490211+00:00", "policyId": "SPEXAMPLEabcdefg333333", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyType": "TEMPLATE_LINKED", "principal": { "entityId": "alice", "entityType": "User" }, "resource": { "entityId": "VacationPhoto94.jpg", "entityType": "Photo" } } ] }
Weitere Informationen zu Richtlinien finden Sie unter Richtlinien von Amazon Verified Permissions im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie ListPolicies
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendunglist-policy-stores
.
- AWS CLI
-
Um die verfügbaren Policy Stores aufzulisten
Im folgenden
list-policy-stores
Beispiel werden alle Richtlinienspeicher in der AWS Region aufgeführt. Alle Befehle für Verifizierte Berechtigungen,list-policy-stores
außercreate-policy-store
dass Sie die ID des Richtlinienspeichers angeben, mit dem Sie arbeiten möchten.aws verifiedpermissions list-policy-stores
Ausgabe:
{ "policyStores": [ { "arn": "arn:aws:verifiedpermissions::123456789012:policy-store/PSEXAMPLEabcdefg111111", "createdDate": "2023-06-05T20:16:46.225598+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111" }, { "arn": "arn:aws:verifiedpermissions::123456789012:policy-store/PSEXAMPLEabcdefg222222", "createdDate": "2023-06-08T18:09:37.364356+00:00", "policyStoreId": "PSEXAMPLEabcdefg222222" }, { "arn": "arn:aws:verifiedpermissions::123456789012:policy-store/PSEXAMPLEabcdefg333333", "createdDate": "2023-06-08T18:09:46.920600+00:00", "policyStoreId": "PSEXAMPLEabcdefg333333" } ] }
Weitere Informationen zu Policy Stores finden Sie unter Amazon Verified Permissions Policy Stores im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie ListPolicyStores
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendunglist-policy-templates
.
- AWS CLI
-
Um die verfügbaren Richtlinienvorlagen aufzulisten
Im folgenden
list-policy-templates
Beispiel werden alle Richtlinienvorlagen im angegebenen Richtlinienspeicher aufgeführt.aws verifiedpermissions list-policy-templates \ --policy-store-id
PSEXAMPLEabcdefg111111
Ausgabe:
{ "policyTemplates": [ { "createdDate": "2023-06-12T20:47:42.804511+00:00", "lastUpdatedDate": "2023-06-12T20:47:42.804511+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyTemplateId": "PTEXAMPLEabcdefg111111" } ] }
Weitere Informationen zu Richtlinienvorlagen finden Sie unter Richtlinienvorlagen von Amazon Verified Permissions im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie ListPolicyTemplates
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungput-schema
.
- AWS CLI
-
Um ein Schema in einem Richtlinienspeicher zu speichern
Im folgenden
put-schema
Beispiel wird das Schema im angegebenen Richtlinienspeicher erstellt oder ersetzt.Der
cedarJson
Parameter in der Eingabedatei verwendet eine Zeichenfolgendarstellung eines JSON Objekts. Er enthält eingebettete Anführungszeichen („) innerhalb des äußersten Anführungszeichenpaars. Dazu müssen Sie das in eine Zeichenfolge konvertierenJSON, indem Sie allen eingebetteten Anführungszeichen einen umgekehrten Schrägstrich (") voranstellen und alle Zeilen zu einer einzigen Textzeile ohne Zeilenumbrüche zusammenfassen.Beispielzeichenfolgen können hier aus Gründen der besseren Lesbarkeit über mehrere Zeilen verteilt angezeigt werden, aber für den Vorgang müssen die Parameter als einzeilige Zeichenfolgen übermittelt werden.
aws verifiedpermissions put-schema --Definitionsdatei: //schema.txt -- policy-store-id PSEXAMPLEabcdefg111111
Inhalt von
schema.txt
:{ "cedarJson": "{\"MySampleNamespace\": {\"actions\": {\"remoteAccess\": { \"appliesTo\": {\"principalTypes\": [\"Employee\"]}}},\"entityTypes\": { \"Employee\": {\"shape\": {\"attributes\": {\"jobLevel\": {\"type\": \"Long\"},\"name\": {\"type\": \"String\"}},\"type\": \"Record\"}}}}}" }
Ausgabe:
{ "policyStoreId": "PSEXAMPLEabcdefg111111", "namespaces": [ "MySampleNamespace" ], "createdDate": "2023-06-14T17:47:13.999885+00:00", "lastUpdatedDate": "2023-06-14T17:47:13.999885+00:00" }
Weitere Informationen zum Schema finden Sie unter Policy Store Schema im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie PutSchema
unter AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungupdate-identity-source
.
- AWS CLI
-
Um eine Identitätsquelle zu aktualisieren
Im folgenden
update-identity-source
Beispiel wird die angegebene Identitätsquelle geändert, indem eine neue Cognito-Benutzerpoolkonfiguration bereitgestellt und der von der Identitätsquelle zurückgegebene Entitätstyp geändert wird.aws verifiedpermissions update-identity-source --identity-source-id
ISEXAMPLEabcdefg111111
\ --update-configurationfile://config.txt
\ --principal-entity-type"Employee"
\ --policy-store-idPSEXAMPLEabcdefg111111
Inhalt von
config.txt
:{ "cognitoUserPoolConfiguration": { "userPoolArn": "arn:aws:cognito-idp:us-west-2:123456789012:userpool/us-west-2_1a2b3c4d5", "clientIds":["a1b2c3d4e5f6g7h8i9j0kalbmc"] } }
Ausgabe:
{ "createdDate": "2023-05-19T20:30:28.214829+00:00", "identitySourceId": "ISEXAMPLEabcdefg111111", "lastUpdatedDate": "2023-05-19T20:30:28.214829+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111" }
Weitere Informationen zu Identitätsquellen finden Sie unter Verwenden von Amazon Verified Permissions mit Identitätsanbietern im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie UpdateIdentitySource
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungupdate-policy-store
.
- AWS CLI
-
Um einen Richtlinienspeicher zu aktualisieren
Im folgenden
update-policy-store
Beispiel wird ein Richtlinienspeicher geändert, indem seine Validierungseinstellung geändert wird.aws verifiedpermissions update-policy-store \ --validation-settings
"mode=STRICT"
\ --policy-store-idPSEXAMPLEabcdefg111111
Ausgabe:
{ "arn": "arn:aws:verifiedpermissions::123456789012:policy-store/PSEXAMPLEabcdefg111111", "createdDate": "2023-05-16T17:41:29.103459+00:00", "lastUpdatedDate": "2023-05-16T17:41:29.103459+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111" }
Weitere Informationen zu Policy Stores finden Sie unter Amazon Verified Permissions Policy Stores im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie UpdatePolicyStore
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungupdate-policy-template
.
- AWS CLI
-
Beispiel 1: Um eine Richtlinienvorlage zu aktualisieren
Im folgenden
update-policy-template
Beispiel wird die angegebene, mit der Vorlage verknüpfte Richtlinie so geändert, dass sie ihre Richtlinienaussage ersetzt.aws verifiedpermissions update-policy-template \ --policy-template-id
PTEXAMPLEabcdefg111111
\ --statementfile://template1.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Inhalt der Datei:
template1.txt
permit( principal in ?principal, action == Action::"view", resource == Photo::"VacationPhoto94.jpg" );
Ausgabe:
{ "createdDate": "2023-06-12T20:47:42.804511+00:00", "lastUpdatedDate": "2023-06-12T20:47:42.804511+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyTemplateId": "PTEXAMPLEabcdefg111111" }
Weitere Informationen zu Richtlinienvorlagen finden Sie unter Richtlinienvorlagen von Amazon Verified Permissions im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie UpdatePolicyTemplate
in der AWS CLI Befehlsreferenz.
-
Das folgende Codebeispiel zeigt die Verwendungupdate-policy
.
- AWS CLI
-
Beispiel 1: Um eine statische Richtlinie zu erstellen
Im folgenden
create-policy
Beispiel wird eine statische Richtlinie mit einem Richtlinienbereich erstellt, der sowohl einen Prinzipal als auch eine Ressource angibt.aws verifiedpermissions create-policy \ --definition
file://definition.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Der
statement
Parameter verwendet eine Zeichenfolgendarstellung eines JSON Objekts. Er enthält eingebettete Anführungszeichen („) innerhalb des äußersten Anführungszeichenpaars. Dazu müssen Sie das in eine Zeichenfolge konvertierenJSON, indem Sie allen eingebetteten Anführungszeichen einen umgekehrten Schrägstrich (") voranstellen und alle Zeilen zu einer einzigen Textzeile ohne Zeilenumbrüche zusammenfassen.Beispielzeichenfolgen können hier aus Gründen der besseren Lesbarkeit über mehrere Zeilen verteilt angezeigt werden, aber für den Vorgang müssen die Parameter als einzeilige Zeichenfolgen übermittelt werden.
Inhalt der Datei
definition.txt
:{ "static": { "description": "Grant everyone of janeFriends UserGroup access to the vacationFolder Album", "statement": "permit(principal in UserGroup::\"janeFriends\", action, resource in Album::\"vacationFolder\" );" } }
Ausgabe:
{ "createdDate": "2023-06-12T20:33:37.382907+00:00", "lastUpdatedDate": "2023-06-12T20:33:37.382907+00:00", "policyId": "SPEXAMPLEabcdefg111111", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyType": "STATIC", "principal": { "entityId": "janeFriends", "entityType": "UserGroup" }, "resource": { "entityId": "vacationFolder", "entityType": "Album" } }
Beispiel 2: Um eine statische Richtlinie zu erstellen, die allen Benutzern Zugriff auf eine Ressource gewährt
Im folgenden
create-policy
Beispiel wird eine statische Richtlinie mit einem Richtlinienbereich erstellt, der nur eine Ressource angibt.aws verifiedpermissions create-policy \ --definition
file://definition2.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Inhalt der Datei
definition2.txt
:{ "static": { "description": "Grant everyone access to the publicFolder Album", "statement": "permit(principal, action, resource in Album::\"publicFolder\");" } }
Ausgabe:
{ "createdDate": "2023-06-12T20:39:44.975897+00:00", "lastUpdatedDate": "2023-06-12T20:39:44.975897+00:00", "policyId": "PbfR73F8oh5MMfr9uRtFDB", "policyStoreId": "PSEXAMPLEabcdefg222222", "policyType": "STATIC", "resource": { "entityId": "publicFolder", "entityType": "Album" } }
Beispiel 3: Um eine mit einer Vorlage verknüpfte Richtlinie zu erstellen, die der angegebenen Vorlage zugeordnet ist
Das folgende
create-policy
Beispiel erstellt eine mit einer Vorlage verknüpfte Richtlinie unter Verwendung der angegebenen Richtlinienvorlage und ordnet den angegebenen Prinzipal, der verwendet werden soll, der neuen, mit der Vorlage verknüpften Richtlinie zu.aws verifiedpermissions create-policy \ --definition
file://definition2.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Inhalt von definition3.txt:
{ "templateLinked": { "policyTemplateId": "PTEXAMPLEabcdefg111111", "principal": { "entityType": "User", "entityId": "alice" } } }
Ausgabe:
{ "createdDate": "2023-06-12T20:49:51.490211+00:00", "lastUpdatedDate": "2023-06-12T20:49:51.490211+00:00", "policyId": "TPEXAMPLEabcdefg111111", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyType": "TEMPLATE_LINKED", "principal": { "entityId": "alice", "entityType": "User" }, "resource": { "entityId": "VacationPhoto94.jpg", "entityType": "Photo" } }
Weitere Informationen zu Richtlinien finden Sie unter Richtlinien von Amazon Verified Permissions im Amazon Verified Permissions User Guide.
-
APIEinzelheiten finden Sie UpdatePolicy
in der AWS CLI Befehlsreferenz.
-