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.
Preguntas frecuentes sobre la actualización de Amazon Verified Permissions a Cedar 4
Amazon Verified Permissions está actualizando la versión de Cedar que utiliza de la versión 2 a la versión 4. Cedar es el lenguaje de código abierto que utiliza para escribir las políticas, las plantillas de políticas y los esquemas de sus almacenes de pólizas. Con la compatibilidad con Cedar 4 en Verified Permissions, puede utilizar nuevas funciones, como las etiquetas de is operador y entidad, para redactar políticas más expresivas.
Amazon Verified Permissions actualiza automáticamente los almacenes de políticas a Cedar 4. Sin embargo, algunas políticas, esquemas y solicitudes de autorización redactadas para Cedar 2 son incompatibles con Cedar 4. Si este es el caso de su almacén de pólizas, no lo actualizaremos automáticamente. Es posible que deba realizar cambios en sus políticas, plantillas de políticas, esquemas o código de aplicación antes de poder actualizar a Cedar 4.
Temas
¿Por qué algunas políticas, plantillas de políticas y esquemas no son compatibles con Cedar 4?
¿Cómo puedo saber si mi almacén de pólizas usa Cedar 2 o Cedar 4?
¿Cómo puedo hacer que mi esquema sea compatible con Cedar 4?
¿Cómo puedo hacer que mis políticas y plantillas sean compatibles con Cedar 4?
¿Por qué algunas políticas, plantillas de políticas y esquemas no son compatibles con Cedar 4?
El equipo de Cedar ha realizado varios cambios incompatibles con versiones anteriores desde Cedar 2 para corregir errores y simplificar el lenguaje. Entre estos cambios se incluyen los siguientes:
cambios en la sintaxis de las políticas, las plantillas de políticas y los esquemas
un validador de políticas más preciso, que detecta más errores
cambios en el comportamiento de las funciones integradas, como
isInRange
¿Cómo puedo saber si mi almacén de pólizas usa Cedar 2 o Cedar 4?
Puedes comprobar la versión de Cedar que utiliza tu almacén de políticas mediante la consola de permisos verificados de Amazon o mediante la GetPolicyStore operación.
nota
Todos los almacenes de pólizas de Cuenta de AWS la misma región utilizan la misma versión de Cedar.
¿Cómo puedo actualizar a Cedar 4?
Amazon Verified Permissions ya ha actualizado a la mayoría de los clientes a Cedar 4. Si nunca ha creado un almacén de políticas, todos los nuevos almacenes de políticas que cree utilizarán Cedar 4. Si ya eres cliente, es probable que ya te hayamos actualizado a Cedar 4. Consulte ¿Cómo puedo saber si mi almacén de pólizas usa Cedar 2 o Cedar 4? para comprobar qué versión de Cedar utilizan sus pólizas.
Si no se ha actualizado, Verified Permissions ha detectado una política, plantilla de política, esquema o solicitud de autorización en uno de sus almacenes de políticas que no es compatible con Cedar 4. Le enviaremos una notificación por correo electrónico describiendo qué recursos son incompatibles más adelante en 2025. Para actualizar antes, abre una caja con Soporte.
importante
Todos los almacenes de pólizas del mismo Cuenta de AWS modo utilizan la misma versión de Cedar. Si un almacén de políticas de su cuenta no es compatible con Cedar 4, no podrá usar Cedar 4 en ningún almacén de políticas de esa cuenta.
¿Puedo cambiar mi almacén de pólizas de Cedar 4 a Cedar 2?
No. Si tiene problemas después de actualizar su almacén de pólizas a Cedar 4, abra un caso con Soporte.
¿Por qué recibo un mensaje de error que indica que mi almacén de políticas está configurado para Cedar 2?
Algunas funciones de Amazon Verified Permissions se basan en las nuevas funciones de Cedar 4. Si su almacén de políticas no usa Cedar 4, no podrá usar los siguientes campos de API:
-
En las BatchIsAuthorizedWithToken operaciones IsAuthorizedBatchIsAuthorized, IsAuthorizedWithToken y:
datetime,decimalodurationvalores en loscontextcamposattributeso
No puede usar la sintaxis ni los tipos de datos en las políticas, plantillas de políticas o esquemas introducidos después de Cedar 2 hasta que se actualice su almacén de políticas.
¿Cómo puedo hacer que mi esquema sea compatible con Cedar 4?
La consola de permisos verificados puede solucionar automáticamente algunos problemas de compatibilidad en su esquema. Si el esquema no se puede corregir automáticamente, la consola mostrará una lista de errores para que los corrija manualmente.
importante
El editor de código de la consola de permisos verificados de Amazon siempre muestra los errores y advertencias de Cedar 4, incluso si su almacén de políticas usa Cedar 2. Puede seguir realizando actualizaciones de esquemas que no sean compatibles con Cedar 4 mediante el botón Guardar cambios o la API de permisos verificados.
Para corregir un esquema mediante la consola
-
Inicia sesión en la consola de permisos verificados de Amazon Consola de administración de AWS y ábrela en verifiedpermissions
. -
En el panel de navegación, selecciona Almacenes de políticas y, a continuación, elige el almacén de políticas que deseas consultar.
-
Elija Esquema en el panel de navegación.
-
Si tu esquema se puede corregir automáticamente, verás un banner que dice «Haz clic en 'Reparar' para previsualizar una versión compatible». Selecciona Reparar.
-
Revisa los cambios realizados en el esquema y haz clic en Vista previa del esquema actualizado.
-
Revisa el esquema actualizado y haz clic en Guardar cambios.
Si el esquema no se puede corregir automáticamente, puedes ver una lista de errores que puedes corregir tú mismo en la consola.
-
Abre la página de edición del esquema tal y como se ha descrito anteriormente.
-
Seleccione el modo JSON.
-
Sitúa el cursor sobre el icono de error rojo situado en el margen izquierdo del editor de código. El mensaje de error aparece en la información sobre herramientas.
Estos son algunos de los errores más comunes que se pueden encontrar y cómo resolverlos:
- no se pudo analizar el esquema de JSON: `
field-name` -
Con Cedar 2, puede incluir campos arbitrarios en partes de los esquemas, como las definiciones de tipos, incluso si no tienen ningún significado como parte de un esquema de Cedar. En Cedar 4, esto ya no está permitido. Para resolver este error, elimina el campo llamado
field-namede tu esquema JSON. Para obtener una lista de los campos de esquema válidos, consulte la documentación de Cedar. - tipo de extensión desconocido `
extension-name` -
En Cedar 2, al declarar un atributo cuyo
typeesExtension, puede especificar cualquier valor para elnamecampo, independientemente de si el valor es un nombre de tipo de extensión válido o no. Ahora se trata de un error de Cedar 4. Para resolverlo,extension-namesustitúyalo por un nombre de tipo de extensión válido. Encontrará una lista de nombres de tipos de extensión válidos en la documentación de Cedar.
Si aún no está seguro de cómo resolver los errores de su esquema, póngase en contacto con Soporte
¿Cómo puedo hacer que mis políticas y plantillas sean compatibles con Cedar 4?
La consola de permisos verificados muestra cualquier error en la política o plantilla que la haga incompatible con Cedar 4.
Para ver los errores de una política o plantilla en la consola
-
Inicia sesión en la consola de permisos verificados de Amazon Consola de administración de AWS y ábrela en verifiedpermissions
. -
En el panel de navegación, selecciona Almacenes de políticas y, a continuación, elige el almacén de políticas que deseas consultar.
-
Seleccione Políticas o Plantillas de políticas en el panel de navegación, según corresponda.
-
Seleccione la política o plantilla incompatible.
-
Seleccione Editar
-
Coloca el cursor sobre el icono de error rojo en el margen izquierdo del editor de código. El mensaje de error aparece en la información sobre herramientas.
Estos son algunos de los errores más comunes que se pueden encontrar y cómo resolverlos:
- Los literales vacíos están prohibidos en las políticas
-
En Cedar 2, puede usar la sintaxis
mySet == []para comprobar si un conjunto está vacío. Con Cedar 4, las políticas que utilizan esta sintaxis ya no se validan con respecto a un esquema. SustituyamySet == []su póliza pormySet.isEmpty().