Permisos impulsados por metadatos metadata-driven-permissions

Permisos impulsados por metadatos es una función que se utiliza para permitir que las decisiones de control de acceso en AEM Assets Author se basen en propiedades de metadatos de recursos en lugar de en la estructura de carpetas. Con esta capacidad, puede definir políticas de control de acceso que evalúen atributos como el estado del recurso, el tipo o cualquier propiedad de metadatos personalizada que defina.

Veamos un ejemplo… Los creativos cargan su trabajo en AEM Assets en la carpeta relacionada con la campaña, podría ser un recurso de trabajo en curso que no se haya aprobado para su uso. Queremos asegurarnos de que los especialistas en marketing solo vean los activos aprobados para esta campaña. Podemos utilizar la propiedad de metadatos para indicar que un recurso se ha aprobado y que los especialistas en marketing pueden utilizarlo.

Cómo funciona

La activación de permisos impulsados por metadatos implica la definición de qué propiedades de metadatos de recurso generarán restricciones de acceso, como "estado" o "marca". Estas propiedades se pueden utilizar para crear entradas de control de acceso que especifiquen qué grupos de usuarios tienen acceso a recursos con valores de propiedad específicos.

Requisitos previos

Se requiere acceso a un entorno de AEM as a Cloud Service actualizado a la versión más reciente para configurar permisos impulsados por metadatos.

Configuración de OSGi configure-permissionable-properties

Para implementar Permisos impulsados por metadatos, un desarrollador debe implementar una configuración OSGi en AEM as a Cloud Service que permita propiedades de metadatos de recursos específicas para habilitar permisos impulsados por metadatos.

  1. Determine qué propiedades de metadatos de recurso se utilizarán para el control de acceso. Los nombres de propiedad son los nombres de propiedad JCR en el recurso jcr:content/metadata del recurso. En nuestro caso, será una propiedad llamada status.

  2. AEM Cree una configuración de OSGi com.adobe.cq.dam.assetmetadatarestrictionprovider.impl.DefaultRestrictionProviderConfiguration.cfg.json en su proyecto de Maven de.

  3. Pegue el siguiente JSON en el archivo creado:

    code language-json
    {
      "restrictionPropertyNames":[
        "status",
        "brand"
      ],
      "enabled":true
    }
    
  4. Reemplace los nombres de propiedad por los valores necesarios.

Restablecer permisos de recursos base

Antes de agregar entradas de control de acceso basadas en restricciones, se debe agregar una nueva entrada de nivel superior para denegar primero el acceso de lectura a todos los grupos sujetos a la evaluación de permisos para Assets (por ejemplo, "colaboradores" o similares):

  1. Vaya a la pantalla Herramientas → Seguridad → Permisos
  2. Seleccione el grupo Colaboradores (u otro grupo personalizado al que pertenezcan todos los grupos de usuarios)
  3. Haga clic en Agregar ACE en la esquina superior derecha de la pantalla
  4. Seleccionar /content/dam para ruta
  5. Escriba jcr:read para privilegios
  6. Seleccionar Deny para tipo de permiso
  7. En Restricciones, seleccione rep:ntNames e introduzca dam:Asset como Valor de restricción
  8. Haga clic en Guardar

Denegar acceso

Conceder acceso a los recursos mediante metadatos

Ahora se pueden agregar entradas de control de acceso para conceder acceso de lectura a los grupos de usuarios en función de los valores de propiedad de metadatos de recursos configurados.

  1. Vaya a la pantalla Herramientas → Seguridad → Permisos
  2. Seleccione los grupos de usuarios que deben tener acceso a los recursos
  3. Haga clic en Agregar ACE en la esquina superior derecha de la pantalla
  4. Seleccionar /content/dam (o una subcarpeta) para ruta
  5. Escriba jcr:read para privilegios
  6. Seleccionar Allow para tipo de permiso
  7. En Restricciones, seleccione uno de los nombres de propiedad de metadatos de recursos configurados en la configuración OSGi
  8. Escriba el valor de propiedad de metadatos requerido en el campo Valor de restricción
  9. Haga clic en el icono + para agregar la restricción a la entrada de control de acceso
  10. Haga clic en Guardar

Permitir el acceso

Permisos impulsados por metadatos en vigor

La carpeta de ejemplo contiene un par de recursos.

Vista de administrador

Una vez configurados los permisos y establecidas las propiedades de los metadatos del recurso según corresponda, los usuarios (usuario de marketing en nuestro caso) solo verán el recurso aprobado.

Vista de experto en marketing

Ventajas y consideraciones

Los beneficios de los permisos impulsados por metadatos incluyen:

  • Control preciso del acceso a los recursos en función de atributos específicos.
  • Desvinculación de las políticas de control de acceso de la estructura de carpetas, lo que permite una organización de recursos más flexible.
  • Capacidad para definir reglas de control de acceso complejas basadas en varias propiedades de metadatos.
NOTE
Es importante tener en cuenta lo siguiente:
  • Las propiedades de metadatos se evalúan en función de las restricciones que utilizan igualdad de cadena (=) (no se admiten otros tipos de datos u operadores, para propiedades de fecha o superiores a (>))
  • Para permitir varios valores para una propiedad de restricción, se pueden agregar restricciones adicionales a la Entrada de control de acceso seleccionando la misma propiedad en la lista desplegable "Seleccionar tipo" e introduciendo un nuevo valor de restricción (por ejemplo, status=approved, status=wip) y haciendo clic en "+" para agregar la restricción a la entrada
    Permitir varios valores
  • Se admiten restricciones AND mediante varias restricciones en una sola entrada de control de acceso con nombres de propiedad diferentes (por ejemplo, status=approved, brand=Adobe) que se evaluará como una condición AND; es decir, se concederá acceso de lectura al grupo de usuarios seleccionado a los recursos con status=approved AND brand=Adobe
    Permitir varias restricciones
  • Se admiten restricciones OR al agregar una nueva entrada de control de acceso con una restricción de propiedad de metadatos que establecerá una condición OR para las entradas; por ejemplo, una sola entrada con restricción status=approved y una sola entrada con brand=Adobe se evaluará como status=approved OR brand=Adobe
    Permitir varias restricciones
recommendation-more-help
a483189e-e5e6-49b5-a6dd-9c16d9dc0519