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à.
Creazione e aggiornamento delle policy: convalida del motore per policy
Quando si creano o si aggiornano le politiche direttamente (non tramite generazione), la convalida e l'analisi tengono conto della nuova politica e delle sue interazioni con tutte le politiche preesistenti nel motore delle politiche.
Come funziona
-
La policy viene confrontata con lo schema Cedar per tutti i gateway associati al policy engine. I controlli dello schema vengono sempre eseguiti indipendentemente dalla modalità di convalida.
-
Se la modalità di convalida è impostata su
FAIL_ON_ANY_FINDINGS, la convalida semantica viene eseguita nel contesto dell'intero motore delle politiche, verificando la presenza di politiche eccessivamente permissive, eccessivamente restrittive e inefficaci. Se i controlli dello schema o la convalida semantica producono risultati, la policy viene rifiutata. Per i dettagli su ciascun controllo, vedere Panoramica sulla convalida e sull'analisi.
Nota
ConIGNORE_ALL_FINDINGS, vengono eseguiti solo i controlli dello schema. Le policy sono accettate purché superino i controlli dello schema. Per ulteriori informazioni, vedere Aggiungere policy al Policy Engine.
Esempio: creare una policy con convalida
Crea una policy con una convalida rigorosa che rifiuti le politiche con qualsiasi risultato:
aws bedrock-agentcore-control create-policy \ --policy-engine-id MyEngine-abc123 \ --name RestrictRefunds \ --validation-mode FAIL_ON_ANY_FINDINGS \ --definition '{ "cedar": { "statement": "forbid(\n principal,\n action == Action::\"processRefund\",\n resource\n) when {\n context.amount > 1000\n};" } }'
La risposta indica che la policy è in fase di creazione:
{ "policyId": "RestrictRefunds-ghi789", "status": "CREATING" }
Controlla lo stato della politica per confermare che la convalida è stata superata:
aws bedrock-agentcore-control get-policy \ --policy-engine-id MyEngine-abc123 \ --policy-id RestrictRefunds-ghi789
Quando la convalida viene superata, la policy diventa attiva:
{ "policyId": "RestrictRefunds-ghi789", "status": "ACTIVE", "statusReasons": [] }
Esempio: errore di convalida
Se una policy fa riferimento a un'azione che non esiste nello schema di alcun gateway associato, la convalida ha esito negativo:
aws bedrock-agentcore-control create-policy \ --policy-engine-id MyEngine-abc123 \ --name InvalidPolicy \ --validation-mode FAIL_ON_ANY_FINDINGS \ --definition '{ "cedar": { "statement": "permit(\n principal,\n action == Action::\"nonExistentTool\",\n resource\n);" } }'
Quando si controlla lo stato della policy, la risposta mostra l'errore di convalida:
aws bedrock-agentcore-control get-policy \ --policy-engine-id MyEngine-abc123 \ --policy-id InvalidPolicy-jkl012
{ "policyId": "InvalidPolicy-jkl012", "status": "CREATE_FAILED", "statusReasons": [ "Validation failed: Action 'nonExistentTool' is not defined in the schema for any associated gateway" ] }