Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Creación y actualización de políticas: validación por motor de políticas
Al crear o actualizar políticas directamente (no mediante generación), la validación y el análisis tienen en cuenta la nueva política, así como sus interacciones con todas las políticas preexistentes en el motor de políticas.
Funcionamiento
-
La política se compara con el esquema de Cedar para todas las pasarelas asociadas al motor de políticas. Las comprobaciones de esquema siempre se ejecutan independientemente del modo de validación.
-
Si el modo de validación está establecido en
FAIL_ON_ANY_FINDINGS, la validación semántica se ejecuta en el contexto de todo el motor de políticas y comprueba si hay políticas demasiado permisivas, restrictivas e ineficaces. Si las comprobaciones del esquema o la validación semántica arrojan resultados, la política se rechaza. Para obtener más información sobre cada comprobación, consulte Descripción general Descripción general de la validación y el análisis de la validación y el análisis.
nota
ConIGNORE_ALL_FINDINGS, solo se ejecutan las comprobaciones de esquema. Las políticas se aceptan siempre que superen las comprobaciones de esquema. Para obtener más información, consulte Agregar políticas al motor de políticas.
Ejemplo: crear una política con validación
Cree una política con una validación estricta que rechace las políticas si detecta lo siguiente:
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 respuesta indica que se está creando la política:
{ "policyId": "RestrictRefunds-ghi789", "status": "CREATING" }
Compruebe el estado de la política para confirmar que se ha realizado la validación:
aws bedrock-agentcore-control get-policy \ --policy-engine-id MyEngine-abc123 \ --policy-id RestrictRefunds-ghi789
Cuando se aprueba la validación, la política pasa a estar activa:
{ "policyId": "RestrictRefunds-ghi789", "status": "ACTIVE", "statusReasons": [] }
Ejemplo: error de validación
Si una política hace referencia a una acción que no existe en el esquema de ninguna puerta de enlace asociada, la validación falla:
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);" } }'
Cuando compruebas el estado de la política, la respuesta muestra el error de validación:
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" ] }