Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Esempi di autorizzazioni verificate utilizzando AWS CLI
I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface with Verified Permissions.
Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni di servizio, è possibile visualizzare le azioni nel loro contesto negli scenari correlati.
Ogni esempio include un collegamento al codice sorgente completo, in cui è possibile trovare istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Azioni
Il seguente esempio di codice mostra come utilizzarecreate-identity-source
.
- AWS CLI
-
Per creare una fonte di identità
L'
create-identity-source
esempio seguente crea un'origine di identità che consente di fare riferimento alle identità archiviate nel pool di utenti Amazon Cognito specificato. Queste identità sono disponibili in Autorizzazioni verificate come entità di tipo.User
aws verifiedpermissions create-identity-source \ --configuration
file://config.txt
\ --principal-entity-type"User"
\ --policy-store-idPSEXAMPLEabcdefg111111
Contenuto di
config.txt
.{ "cognitoUserPoolConfiguration": { "userPoolArn": "arn:aws:cognito-idp:us-west-2:123456789012:userpool/us-west-2_1a2b3c4d5", "clientIds":["a1b2c3d4e5f6g7h8i9j0kalbmc"] } }
Output:
{ "createdDate": "2023-05-19T20:30:28.214829+00:00", "identitySourceId": "ISEXAMPLEabcdefg111111", "lastUpdatedDate": "2023-05-19T20:30:28.214829+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111" }
Per ulteriori informazioni sulle fonti di identità, consulta Using Amazon Verified Permissions with identity provider nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command CreateIdentitySource
Reference.
-
Il seguente esempio di codice mostra come utilizzarecreate-policy-store
.
- AWS CLI
-
Per creare un archivio delle politiche
L'
create-policy-store
esempio seguente crea un archivio delle politiche nella AWS regione corrente.aws verifiedpermissions create-policy-store \ --validation-settings
"mode=STRICT"
Output:
{ "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" }
Per ulteriori informazioni sugli archivi delle politiche, consulta gli archivi delle politiche di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command CreatePolicyStore
Reference.
-
Il seguente esempio di codice mostra come utilizzarecreate-policy-template
.
- AWS CLI
-
Esempio 1: creare un modello di policy
L'
create-policy-template
esempio seguente crea un modello di policy con un'istruzione che contiene un segnaposto per il principale.aws verifiedpermissions create-policy-template \ --definition
file://template1.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Contenuto del file:
template1.txt
permit( principal in ?principal, action == Action::"view", resource == Photo::"VacationPhoto94.jpg" );
Output:
{ "createdDate": "2023-06-12T20:47:42.804511+00:00", "lastUpdatedDate": "2023-06-12T20:47:42.804511+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyTemplateId": "PTEXAMPLEabcdefg111111" }
Per ulteriori informazioni sui modelli di policy, consulta i modelli di policy di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command CreatePolicyTemplate
Reference.
-
Il seguente esempio di codice mostra come utilizzarecreate-policy
.
- AWS CLI
-
Esempio 1: creare una politica statica
L'
create-policy
esempio seguente crea una politica statica con un ambito di policy che specifica sia un principale che una risorsa.aws verifiedpermissions create-policy \ --definition
file://definition1.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Contenuto del file
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\" );" } }
Output:
{ "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" } }
Esempio 2: creare una politica statica che garantisca l'accesso a una risorsa a tutti
L'
create-policy
esempio seguente crea una politica statica con un ambito di policy che specifica solo una risorsa.aws verifiedpermissions create-policy \ --definition
file://definition2.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Contenuto del file
definition2.txt
:{ "static": { "description": "Grant everyone access to the publicFolder Album", "statement": "permit(principal, action, resource in Album::\"publicFolder\");" } }
Output:
{ "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" } }
Esempio 3: creare una politica collegata al modello associata al modello specificato
L'
create-policy
esempio seguente crea una politica collegata al modello utilizzando il modello di policy specificato e associa il principale specificato da utilizzare alla nuova politica collegata al modello.aws verifiedpermissions create-policy \ --definition
file://definition.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Contenuto di
definition.txt
.{ "templateLinked": { "policyTemplateId": "PTEXAMPLEabcdefg111111", "principal": { "entityType": "User", "entityId": "alice" } } }
Output:
{ "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" } }
Per ulteriori informazioni sulle politiche, consulta le politiche di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command CreatePolicy
Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-identity-source
.
- AWS CLI
-
Per eliminare una fonte di identità
L'
delete-identity-source
esempio seguente elimina l'origine dell'identità con l'ID specificato.aws verifiedpermissions delete-identity-source \ --identity-source-id
ISEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Questo comando non produce alcun output.
Per ulteriori informazioni sulle fonti di identità, consulta Using Amazon Verified Permissions with identity provider nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command DeleteIdentitySource
Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-policy-store
.
- AWS CLI
-
Per eliminare un archivio delle politiche
L'
delete-policy-store
esempio seguente elimina il policy store con l'ID specificato.aws verifiedpermissions delete-policy-store \ --policy-store-id
PSEXAMPLEabcdefg111111
Questo comando non produce alcun output.
Per ulteriori informazioni sugli archivi delle politiche, consulta gli archivi delle politiche di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command DeletePolicyStore
Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-policy-template
.
- AWS CLI
-
Per eliminare un modello di policy
L'
delete-policy-template
esempio seguente elimina il modello di policy con l'ID specificato.aws verifiedpermissions delete-policy \ --policy-template-id
PTEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Questo comando non produce alcun output.
Per ulteriori informazioni sui modelli di policy, consulta i modelli di policy di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command DeletePolicyTemplate
Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-policy
.
- AWS CLI
-
Per eliminare una policy statica o collegata a un modello
L'
delete-policy
esempio seguente elimina la politica con l'ID specificato.aws verifiedpermissions delete-policy \ --policy-id
SPEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Questo comando non produce alcun output.
Per ulteriori informazioni sulle politiche, consulta le politiche di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command DeletePolicy
Reference.
-
Il seguente esempio di codice mostra come utilizzareget-identity-source
.
- AWS CLI
-
Per recuperare i dettagli su una fonte di identità
L'
get-identity-source
esempio seguente visualizza i dettagli dell'origine dell'identità con l'ID specificato.aws verifiedpermissions get-identity-source \ --identity-source
ISEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Output:
{ "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" }
Per ulteriori informazioni sulle fonti di identità, consulta Using Amazon Verified Permissions with identity provider nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command GetIdentitySource
Reference.
-
Il seguente esempio di codice mostra come utilizzareget-policy-store
.
- AWS CLI
-
Per recuperare i dettagli su un archivio di politiche
L'
get-policy-store
esempio seguente visualizza i dettagli del policy store con l'ID specificato.aws verifiedpermissions get-policy-store \ --policy-store-id
PSEXAMPLEabcdefg111111
Output:
{ "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" } }
Per ulteriori informazioni sugli archivi delle politiche, consulta gli archivi delle politiche di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command GetPolicyStore
Reference.
-
Il seguente esempio di codice mostra come utilizzareget-policy-template
.
- AWS CLI
-
Per recuperare i dettagli su un modello di policy
L'
get-policy-template
esempio seguente visualizza i dettagli del modello di policy con l'ID specificato.aws verifiedpermissions get-policy-template \ --policy-template-id
PTEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Output:
{ "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);" }
Per ulteriori informazioni sui modelli di policy, consulta i modelli di policy di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command GetPolicyTemplate
Reference.
-
Il seguente esempio di codice mostra come utilizzareget-policy
.
- AWS CLI
-
Per recuperare i dettagli su una politica
L'
get-policy
esempio seguente visualizza i dettagli della politica con l'ID specificato.aws verifiedpermissions get-policy \ --policy-id
PSEXAMPLEabcdefg111111
\ --policy-store-idPSEXAMPLEabcdefg111111
Output:
{ "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" } }
Per ulteriori informazioni sulle politiche, consulta le politiche di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command GetPolicy
Reference.
-
Il seguente esempio di codice mostra come utilizzareget-schema
.
- AWS CLI
-
Per recuperare lo schema in un archivio di politiche
L'
get-schema
esempio seguente visualizza i dettagli dello schema nel policy store specificato.aws verifiedpermissions get-schema \ --policy-store-id
PSEXAMPLEabcdefg111111
Output:
{ "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" }
Per ulteriori informazioni sullo schema, consulta lo schema del Policy store nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta GetSchema AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareis-authorized-with-token
.
- AWS CLI
-
Esempio 1: richiedere una decisione di autorizzazione per una richiesta dell'utente (consentire)
L'
is-authorized-with-token
esempio seguente richiede una decisione di autorizzazione per un utente autenticato da Amazon Cognito. La richiesta utilizza il token di identità fornito da Cognito anziché il token di accesso. In questo esempio, l'archivio di informazioni specificato è configurato per restituire i principali come entità di tipo.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"
Il policy store contiene una policy con la seguente dichiarazione che accetta le identità dal pool di utenti e dall'ID dell'applicazione Cognito specificati.
permit( principal == CognitoUser::"us-east-1_1a2b3c4d5|a1b2c3d4e5f6g7h8i9j0kalbmc", action, resource == Photo::"VacationPhoto94.jpg" );
Output:
{ "decision":"Allow", "determiningPolicies":[ { "determiningPolicyId":"SPEXAMPLEabcdefg111111" } ], "errors":[] }
Per ulteriori informazioni sull'utilizzo delle identità di un pool di utenti Cognito, consulta Using Amazon Verified Permissions con provider di identità nella Amazon Verified Permissions User Guide.
-
Per i API dettagli, consulta IsAuthorizedWithToken
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzareis-authorized
.
- AWS CLI
-
Esempio 1: richiedere una decisione di autorizzazione per una richiesta dell'utente (consentire)
L'
is-authorized
esempio seguente richiede una decisione di autorizzazione per un principale di tipoUser
namedAlice
, che desidera eseguire l'updatePhoto
operazione, su una risorsa di tipoPhoto
denominatoVacationPhoto94.jpg
.La risposta mostra che la richiesta è consentita da una politica.
aws verifiedpermissions is-authorized \ --principal
entityType=User,entityId=alice
\ --actionactionType=Action,actionId=view
\ --resourceentityType=Photo,entityId=VactionPhoto94.jpg
\ --policy-store-idPSEXAMPLEabcdefg111111
Output:
{ "decision": "ALLOW", "determiningPolicies": [ { "policyId": "SPEXAMPLEabcdefg111111" } ], "errors": [] }
Esempio 2: richiedere una decisione di autorizzazione per una richiesta dell'utente (negare)
L'esempio seguente è lo stesso dell'esempio precedente, tranne per il fatto che il principale è
User::"Bob"
. L'archivio delle politiche non contiene alcuna politica che consenta l'accesso a tale utenteAlbum::"alice_folder"
.L'output indica che
Deny
era implicito perché l'elenco diDeterminingPolicies
è vuoto.aws verifiedpermissions create-policy \ --definition
file://definition2.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Output:
{ "decision": "DENY", "determiningPolicies": [], "errors": [] }
Per ulteriori informazioni, consulta la Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta IsAuthorized AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-identity-sources
.
- AWS CLI
-
Per elencare le fonti di identità disponibili
L'
list-identity-sources
esempio seguente elenca tutte le fonti di identità nell'archivio delle politiche specificato.aws verifiedpermissions list-identity-sources \ --policy-store-id
PSEXAMPLEabcdefg111111
Output:
{ "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" } ] }
Per ulteriori informazioni sulle fonti di identità, consulta Using Amazon Verified Permissions with identity provider nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command ListIdentitySources
Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-policies
.
- AWS CLI
-
Per elencare le politiche disponibili
L'
list-policies
esempio seguente elenca tutte le politiche nel policy store specificato.aws verifiedpermissions list-policies \ --policy-store-id
PSEXAMPLEabcdefg111111
Output:
{ "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" } } ] }
Per ulteriori informazioni sulle politiche, consulta le politiche di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command ListPolicies
Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-policy-stores
.
- AWS CLI
-
Per elencare gli archivi di policy disponibili
L'
list-policy-stores
esempio seguente elenca tutti gli archivi delle politiche della AWS regione. Tutti i comandi per le autorizzazioni verificate, ad eccezionecreate-policy-store
dei comandi chelist-policy-stores
richiedono la specificazione dell'ID del policy store con cui si desidera lavorare.aws verifiedpermissions list-policy-stores
Output:
{ "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" } ] }
Per ulteriori informazioni sugli archivi delle politiche, consulta gli archivi delle politiche di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command ListPolicyStores
Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-policy-templates
.
- AWS CLI
-
Per elencare i modelli di policy disponibili
L'
list-policy-templates
esempio seguente elenca tutti i modelli di policy nel policy store specificato.aws verifiedpermissions list-policy-templates \ --policy-store-id
PSEXAMPLEabcdefg111111
Output:
{ "policyTemplates": [ { "createdDate": "2023-06-12T20:47:42.804511+00:00", "lastUpdatedDate": "2023-06-12T20:47:42.804511+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyTemplateId": "PTEXAMPLEabcdefg111111" } ] }
Per ulteriori informazioni sui modelli di policy, consulta i modelli di policy di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command ListPolicyTemplates
Reference.
-
Il seguente esempio di codice mostra come utilizzareput-schema
.
- AWS CLI
-
Per salvare uno schema in un archivio di politiche
L'
put-schema
esempio seguente crea o sostituisce lo schema nel policy store specificato.Il
cedarJson
parametro nel file di input accetta una rappresentazione in formato stringa di un JSON oggetto. Contiene virgolette incorporate («) all'interno della coppia di virgolette più esterna. A tale scopo è necessario JSON convertire il in stringa facendo precedere tutte le virgolette incorporate da una barra rovesciata (") e combinando tutte le righe in un'unica riga di testo senza interruzioni di riga.Le stringhe di esempio possono essere visualizzate su più righe per motivi di leggibilità, ma l'operazione richiede che i parametri vengano inviati come stringhe a riga singola.
aws verifiedpermissions put-schema --definition file: //schema.txt -- policy-store-id PSEXAMPLEabcdefg111111
Contenuto di
schema.txt
.{ "cedarJson": "{\"MySampleNamespace\": {\"actions\": {\"remoteAccess\": { \"appliesTo\": {\"principalTypes\": [\"Employee\"]}}},\"entityTypes\": { \"Employee\": {\"shape\": {\"attributes\": {\"jobLevel\": {\"type\": \"Long\"},\"name\": {\"type\": \"String\"}},\"type\": \"Record\"}}}}}" }
Output:
{ "policyStoreId": "PSEXAMPLEabcdefg111111", "namespaces": [ "MySampleNamespace" ], "createdDate": "2023-06-14T17:47:13.999885+00:00", "lastUpdatedDate": "2023-06-14T17:47:13.999885+00:00" }
Per ulteriori informazioni sullo schema, consulta lo schema del Policy store nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta PutSchema AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-identity-source
.
- AWS CLI
-
Per aggiornare una fonte di identità
L'
update-identity-source
esempio seguente modifica l'origine dell'identità specificata fornendo una nuova configurazione del pool di utenti di Cognito e cambiando il tipo di entità restituito dall'origine dell'identità.aws verifiedpermissions update-identity-source --identity-source-id
ISEXAMPLEabcdefg111111
\ --update-configurationfile://config.txt
\ --principal-entity-type"Employee"
\ --policy-store-idPSEXAMPLEabcdefg111111
Contenuto di
config.txt
.{ "cognitoUserPoolConfiguration": { "userPoolArn": "arn:aws:cognito-idp:us-west-2:123456789012:userpool/us-west-2_1a2b3c4d5", "clientIds":["a1b2c3d4e5f6g7h8i9j0kalbmc"] } }
Output:
{ "createdDate": "2023-05-19T20:30:28.214829+00:00", "identitySourceId": "ISEXAMPLEabcdefg111111", "lastUpdatedDate": "2023-05-19T20:30:28.214829+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111" }
Per ulteriori informazioni sulle fonti di identità, consulta Using Amazon Verified Permissions with identity provider nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command UpdateIdentitySource
Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-policy-store
.
- AWS CLI
-
Per aggiornare un archivio di politiche
L'
update-policy-store
esempio seguente modifica un policy store cambiandone l'impostazione di convalida.aws verifiedpermissions update-policy-store \ --validation-settings
"mode=STRICT"
\ --policy-store-idPSEXAMPLEabcdefg111111
Output:
{ "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" }
Per ulteriori informazioni sugli archivi delle politiche, consulta gli archivi delle politiche di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command UpdatePolicyStore
Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-policy-template
.
- AWS CLI
-
Esempio 1: aggiornare un modello di policy
L'
update-policy-template
esempio seguente modifica la politica specificata collegata al modello per sostituire la relativa dichiarazione di politica.aws verifiedpermissions update-policy-template \ --policy-template-id
PTEXAMPLEabcdefg111111
\ --statementfile://template1.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Contenuto del file:
template1.txt
permit( principal in ?principal, action == Action::"view", resource == Photo::"VacationPhoto94.jpg" );
Output:
{ "createdDate": "2023-06-12T20:47:42.804511+00:00", "lastUpdatedDate": "2023-06-12T20:47:42.804511+00:00", "policyStoreId": "PSEXAMPLEabcdefg111111", "policyTemplateId": "PTEXAMPLEabcdefg111111" }
Per ulteriori informazioni sui modelli di policy, consulta i modelli di policy di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command UpdatePolicyTemplate
Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-policy
.
- AWS CLI
-
Esempio 1: creare una politica statica
L'
create-policy
esempio seguente crea una politica statica con un ambito di policy che specifica sia un principale che una risorsa.aws verifiedpermissions create-policy \ --definition
file://definition.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Il
statement
parametro accetta una rappresentazione in formato stringa di un JSON oggetto. Contiene virgolette incorporate («) all'interno della coppia di virgolette più esterna. A tale scopo è necessario JSON convertire il in stringa facendo precedere tutte le virgolette incorporate da una barra rovesciata (") e combinando tutte le righe in un'unica riga di testo senza interruzioni di riga.Le stringhe di esempio possono essere visualizzate su più righe per motivi di leggibilità, ma l'operazione richiede che i parametri vengano inviati come stringhe a riga singola.
Contenuto del file:
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\" );" } }
Output:
{ "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" } }
Esempio 2: creare una politica statica che garantisca l'accesso a una risorsa a tutti
L'
create-policy
esempio seguente crea una politica statica con un ambito di policy che specifica solo una risorsa.aws verifiedpermissions create-policy \ --definition
file://definition2.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Contenuto del file
definition2.txt
:{ "static": { "description": "Grant everyone access to the publicFolder Album", "statement": "permit(principal, action, resource in Album::\"publicFolder\");" } }
Output:
{ "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" } }
Esempio 3: creare una politica collegata al modello associata al modello specificato
L'
create-policy
esempio seguente crea una politica collegata al modello utilizzando il modello di policy specificato e associa il principale specificato da utilizzare alla nuova politica collegata al modello.aws verifiedpermissions create-policy \ --definition
file://definition2.txt
\ --policy-store-idPSEXAMPLEabcdefg111111
Contenuto di definition3.txt:
{ "templateLinked": { "policyTemplateId": "PTEXAMPLEabcdefg111111", "principal": { "entityType": "User", "entityId": "alice" } } }
Output:
{ "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" } }
Per ulteriori informazioni sulle politiche, consulta le politiche di Amazon Verified Permissions nella Amazon Verified Permissions User Guide.
-
Per API i dettagli, consulta AWS CLI Command UpdatePolicy
Reference.
-