Beispiele für Verified Permissions mit AWS CLI
Die folgenden Codebeispiele zeigen, wie Sie Aktionen durchführen und gängige Szenarien implementieren, indem Sie die AWS Command Line Interface mit Verified Permissions nutzen.
Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien anzeigen.
Jedes Beispiel enthält einen Link zum vollständigen Quellcode, wo Sie Anleitungen zum Einrichten und Ausführen des Codes im Kontext finden.
Themen
Aktionen
Das folgende Codebeispiel zeigt, wie create-identity-source verwendet wird.
- AWS CLI
-
So erstellen Sie eine Identitätsquelle
Das folgende Beispiel für
create-identity-sourceerstellt eine Identitätsquelle, mit der Sie Identitäten referenzieren können, die im angegebenen Amazon Cognito-Benutzerpool gespeichert sind. Diese Identitäten sind unter Verified Permissions als Entitäten vom TypUserverfügbar.aws verifiedpermissions create-identity-source \ --configurationfile://config.txt\ --principal-entity-type"User"\ --policy-store-idPSEXAMPLEabcdefg111111Inhalt 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 finden Sie unter So verwenden Sie Amazon Verified Permissions mit Identitätsanbietern im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter CreateIdentitySource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie create-policy-store verwendet wird.
- AWS CLI
-
So erstellen Sie einen Richtlinienspeicher
Im folgenden Beispiel für
create-policy-storewird 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 Richtlinienspeichern finden Sie unter Richtlinienspeicher für Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter CreatePolicyStore
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie create-policy-template verwendet wird.
- AWS CLI
-
So erstellen Sie eine Richtlinienvorlage
Im folgenden Beispiel für
create-policy-templatewird eine Richtlinienvorlage mit einer Anweisung erstellt, die einen Platzhalter für den Prinzipal enthält.aws verifiedpermissions create-policy-template \ --statementfile://template1.txt\ --policy-store-idPSEXAMPLEabcdefg111111Inhalt von
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 für Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter CreatePolicyTemplate
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie create-policy verwendet wird.
- AWS CLI
-
Beispiel 1: So erstellen Sie eine statische Richtlinie
Im folgenden Beispiel für
create-policywird eine statische Richtlinie mit einem Richtlinienumfang erstellt, der sowohl einen Prinzipal als auch eine Ressource angibt.aws verifiedpermissions create-policy \ --definitionfile://definition1.txt\ --policy-store-idPSEXAMPLEabcdefg111111Inhalt der
definition1.txt-Datei:{ "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: So erstellen Sie eine statische Richtlinie, die allen Benutzern Zugriff auf eine Ressource gewährt
Im folgenden Beispiel für
create-policywird eine statische Richtlinie mit einem Richtlinienumfang erstellt, der lediglich eine Ressource angibt.aws verifiedpermissions create-policy \ --definitionfile://definition2.txt\ --policy-store-idPSEXAMPLEabcdefg111111Inhalt der
definition2.txt-Datei:{ "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: So erstellen Sie eine mit einer Vorlage verknüpfte Richtlinie, die der angegebenen Vorlage zugeordnet ist
Das folgende Beispiel für
create-policyerstellt eine mit einer Vorlage verknüpfte Richtlinie unter Verwendung der angegebenen Richtlinienvorlage und ordnet den zu verwendenden Prinzipal der neuen Vorlage-verknüpften Richtlinie zu.aws verifiedpermissions create-policy \ --definitionfile://definition.txt\ --policy-store-idPSEXAMPLEabcdefg111111Inhalt 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 in den Richtlinien von Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter CreatePolicy
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-identity-source verwendet wird.
- AWS CLI
-
So löschen Sie eine Identitätsquelle
Im folgenden Beispiel für
delete-identity-sourcewird die angegebene Identitätsquelle gelöscht.aws verifiedpermissions delete-identity-source \ --identity-source-idISEXAMPLEabcdefg111111\ --policy-store-idPSEXAMPLEabcdefg111111Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zu Identitätsquellen finden Sie in den So verwenden Sie Amazon Verified Permissions mit Identitätsanbietern im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter DeleteIdentitySource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-policy-store verwendet wird.
- AWS CLI
-
So löschen Sie einen Richtlinienspeicher
Im folgenden Beispiel für
delete-policy-storewird der Richtlinienspeicher mit der angegebenen ID gelöscht.aws verifiedpermissions delete-policy-store \ --policy-store-idPSEXAMPLEabcdefg111111Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zu Richtlinienspeichern finden Sie unter Richtlinienspeicher für Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter DeletePolicyStore
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-policy-template verwendet wird.
- AWS CLI
-
So löschen Sie eine Richtlinienvorlage
Im folgenden Beispiel für
delete-policy-templatewird die Richtlinienvorlage mit der angegebenen ID gelöscht.aws verifiedpermissions delete-policy \ --policy-template-idPTEXAMPLEabcdefg111111\ --policy-store-idPSEXAMPLEabcdefg111111Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zu Richtlinienvorlagen finden Sie unter Richtlinienvorlagen für Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter DeletePolicyTemplate
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-policy verwendet wird.
- AWS CLI
-
So löschen Sie eine statische oder mit einer Vorlage verknüpfte Richtlinie
Im folgenden Beispiel für
delete-policywird die Richtlinie mit der angegebenen ID gelöscht.aws verifiedpermissions delete-policy \ --policy-idSPEXAMPLEabcdefg111111\ --policy-store-idPSEXAMPLEabcdefg111111Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen zu Richtlinien finden Sie in den Richtlinien von Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter DeletePolicy
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-identity-source verwendet wird.
- AWS CLI
-
So rufen Sie Details zu einer Identitätsquelle ab
Im folgenden Beispiel für
get-identity-sourcewerden die Einzelheiten der Identitätsquelle mit der angegebenen ID angezeigt.aws verifiedpermissions get-identity-source \ --identity-sourceISEXAMPLEabcdefg111111\ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "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 in den So verwenden Sie Amazon Verified Permissions mit Identitätsanbietern im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter GetIdentitySource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-policy-store verwendet wird.
- AWS CLI
-
So rufen Sie Details zu einem Richtlinienspeicher ab
Im folgenden Beispiel für
get-policy-storewerden die Details für den Richtlinienspeicher mit der angegebenen ID angezeigt.aws verifiedpermissions get-policy-store \ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "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 Richtlinienspeichern finden Sie unter Richtlinienspeicher für Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter GetPolicyStore
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-policy-template verwendet wird.
- AWS CLI
-
So rufen Sie Details zu einer Richtlinienvorlage ab
Im folgenden Beispiel für
get-policy-templatewerden die Details der Richtlinienvorlage mit der angegebenen ID angezeigt.aws verifiedpermissions get-policy-template \ --policy-template-idPTEXAMPLEabcdefg111111\ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "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 für Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter GetPolicyTemplate
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-policy verwendet wird.
- AWS CLI
-
So rufen Sie Details zu eine Richtlinie ab
Im folgenden Beispiel für
get-policywerden die Details der Richtlinie mit der angegebenen ID angezeigt.aws verifiedpermissions get-policy \ --policy-idPSEXAMPLEabcdefg111111\ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "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 in den Richtlinien von Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter GetPolicy
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-schema verwendet wird.
- AWS CLI
-
So rufen Sie das Schema in einem Richtlinienspeicher ab
Im folgenden Beispiel für
get-schemawerden die Details für das Schema im angegebenen Richtlinienspeicher angezeigt.aws verifiedpermissions get-schema \ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "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 Schema des Richtlinienspeichers im Amazon Verified Permissions-Benutzerhandbuch.
-
API-Details finden Sie unter GetSchema
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie is-authorized-with-token verwendet wird.
- AWS CLI
-
Beispiel 1: So fordern Sie eine Autorisierungsentscheidung für eine Benutzeranfrage an (zulassen)
Im folgenden Beispiel für
is-authorized-with-tokenwird 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 TypsCognitoUserzurückgibt.aws verifiedpermissions is-authorized-with-token \ --action actionId="View",actionType="Action" \ --resource entityId="vacationPhoto94.jpg",entityType="Photo" \ --policy-store-idPSEXAMPLEabcdefg111111\ --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 So verwenden Sie Amazon Verified Permissions mit Identitätsanbietern im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter IsAuthorizedWithToken
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie is-authorized verwendet wird.
- AWS CLI
-
Beispiel 1: So fordern Sie eine Autorisierungsentscheidung für eine Benutzeranfrage an (zulassen)
Im folgenden Beispiel für
is-authorizedwird eine Autorisierungsentscheidung für einen Prinzipal des TypsUsermit dem NamenAliceangefordert, der die OperationupdatePhotofür eine Ressource des TypsPhotomit dem NamenVacationPhoto94.jpgausführen möchte.Die Antwort zeigt, dass die Anforderung durch eine Richtlinie zugelassen ist.
aws verifiedpermissions is-authorized \ --principalentityType=User,entityId=alice\ --actionactionType=Action,actionId=view\ --resourceentityType=Photo,entityId=VactionPhoto94.jpg\ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "decision": "ALLOW", "determiningPolicies": [ { "policyId": "SPEXAMPLEabcdefg111111" } ], "errors": [] }Beispiel 2: So fordern Sie eine Autorisierungsentscheidung für eine Benutzeranfrage an (verweigern)
Das folgende Beispiel ist dasselbe wie oben, nur dass hier der Prinzipal
User::"Bob"ist. Der Richtlinienspeicher enthält keine Richtlinie, die diesem Benutzer Zugriff aufAlbum::"alice_folder"gewährt.Die Ausgabe weist darauf hin, dass das
Denyimplizit war, weil die Liste derDeterminingPoliciesleer ist.aws verifiedpermissions create-policy \ --definitionfile://definition2.txt\ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "decision": "DENY", "determiningPolicies": [], "errors": [] }Weitere Informationen finden Sie im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter IsAuthorized
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-identity-sources verwendet wird.
- AWS CLI
-
So listen Sie die verfügbaren Identitätsquellen auf
Im folgenden Beispiel für
list-identity-sourceswerden alle Identitätsquellen im angegebenen Richtlinienspeicher aufgelistet.aws verifiedpermissions list-identity-sources \ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "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 in den Verwenden von Amazon Verified Permissions mit Identitätsanbietern im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter ListIdentitySources
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-policies verwendet wird.
- AWS CLI
-
So listen Sie die verfügbaren Richtlinien auf
Im folgenden Beispiel für
list-policieswerden alle Richtlinien im angegebenen Richtlinienspeicher aufgelistet.aws verifiedpermissions list-policies \ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "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 in den Richtlinien von Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter ListPolicies
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-policy-stores verwendet wird.
- AWS CLI
-
So listen Sie die verfügbaren Richtlinienspeicher auf
Im folgenden Beispiel für
list-policy-storeswerden alle Richtlinienspeicher in der AWS-Region aufgelistet. Alle Befehle für Verified Permissions mit Ausnahme voncreate-policy-storeundlist-policy-storeserfordern eine Angabe der ID des Richtlinienspeichers, mit dem Sie arbeiten möchten.aws verifiedpermissions list-policy-storesAusgabe:
{ "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 Richtlinienspeichern finden Sie unter Richtlinienspeicher für Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter ListPolicyStores
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-policy-templates verwendet wird.
- AWS CLI
-
So listen Sie die verfügbaren Richtlinienvorlagen auf
Im folgenden Beispiel für
list-policy-templateswerden alle Richtlinienvorlagen im angegebenen Richtlinienspeicher aufgelistet.aws verifiedpermissions list-policy-templates \ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "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 für Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter ListPolicyTemplates
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie put-schema verwendet wird.
- AWS CLI
-
So speichern Sie ein Schema in einem Richtlinienspeicher
Im folgenden Beispiel für
put-schemawird das Schema im angegebenen Richtlinienspeicher erstellt oder ersetzt.Der Parameter
cedarJsonin der Eingabedatei verwendet eine Zeichenfolgendarstellung eines JSON-Objekts. Er enthält eingebettete Anführungszeichen (") im äußersten Anführungszeichenpaar. Dazu müssen Sie das JSON in eine Zeichenfolge umwandeln, indem Sie alle eingebetteten Anführungszeichen mit einem umgekehrten Schrägstrich (\) versehen und alle Zeilen zu einer einzigen Textzeile ohne Zeilenumbrüche zusammenfügen.Beispielzeichenfolgen können hier aus Gründen der 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 --definition file://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 Schema des Richtlinienspeichers im Amazon Verified Permissions-Benutzerhandbuch.
-
API-Details finden Sie unter PutSchema
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-identity-source verwendet wird.
- AWS CLI
-
So aktualisieren Sie eine Identitätsquelle
Im folgenden Beispiel für
update-identity-sourcewird 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-idISEXAMPLEabcdefg111111\ --update-configurationfile://config.txt\ --principal-entity-type"Employee"\ --policy-store-idPSEXAMPLEabcdefg111111Inhalt 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 in den Verwenden von Amazon Verified Permissions mit Identitätsanbietern im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter UpdateIdentitySource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-policy-store verwendet wird.
- AWS CLI
-
So aktualisieren Sie einen Richtlinienspeicher
Im folgenden Beispiel für
update-policy-storewird ein Richtlinienspeicher geändert, indem seine Validierungseinstellung geändert wird.aws verifiedpermissions update-policy-store \ --validation-settings"mode=STRICT"\ --policy-store-idPSEXAMPLEabcdefg111111Ausgabe:
{ "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 Richtlinienspeichern finden Sie unter Richtlinienspeicher für Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter UpdatePolicyStore
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-policy-template verwendet wird.
- AWS CLI
-
Beispiel 1: So aktualisieren Sie eine Richtlinienvorlage
Im folgenden Beispiel für
update-policy-templatewird die angegebene, mit der Vorlage verknüpfte Richtlinie so geändert, dass sie ihre Richtlinienaussage ersetzt.aws verifiedpermissions update-policy-template \ --policy-template-idPTEXAMPLEabcdefg111111\ --statementfile://template1.txt\ --policy-store-idPSEXAMPLEabcdefg111111Inhalt der
template1.txt-Datei: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 für Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter UpdatePolicyTemplate
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-policy verwendet wird.
- AWS CLI
-
So aktualisieren Sie eine statische Richtlinie
Im folgenden Beispiel für
update-policywird eine vorhandene statische Richtlinie geändert, indem ihre Beschreibung und Anweisung aktualisiert werden.aws verifiedpermissions update-policy \ --policy-idSPEXAMPLEabcdefg111111\ --definitionfile://updated-definition.txt\ --policy-store-idPSEXAMPLEabcdefg111111Der Parameter
statementverwendet eine Zeichenfolgendarstellung eines JSON-Objekts. Er enthält eingebettete Anführungszeichen (") im äußersten Anführungszeichenpaar. Dazu müssen Sie das JSON in eine Zeichenfolge umwandeln, indem Sie alle eingebetteten Anführungszeichen mit einem umgekehrten Schrägstrich (\) versehen und alle Zeilen zu einer einzigen Textzeile ohne Zeilenumbrüche zusammenfügen.Aus Gründen der besseren Lesbarkeit können Sie Beispielzeichenfolgen anzeigen, die über mehrere Zeilen verteilt sind. Für den Vorgang müssen die Parameter jedoch als einzeilige Zeichenfolgen übermittelt werden.
Inhalt der
updated-definition.txt-Datei:{ "static": { "description": "Updated policy to grant janeFriends UserGroup access to the vacationFolder Album with view action only", "statement": "permit(principal in UserGroup::\"janeFriends\", action == Action::\"view\", 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" } }Weitere Informationen zu Richtlinien finden Sie in den Richtlinien von Amazon Verified Permissions im Benutzerhandbuch zu Amazon Verified Permissions.
-
API-Details finden Sie unter UpdatePolicy
in der AWS CLI-Befehlsreferenz.
-