Metadatadrivna behörigheter metadata-driven-permissions

Metadatadrivna behörigheter är en funktion som används för att tillåta åtkomstkontrollsbeslut på AEM Assets Author att baseras på metadataegenskaper för resurser i stället för på mappstrukturen. Med den här funktionen kan du definiera åtkomstkontrollprinciper som utvärderar attribut som resursstatus, typ eller anpassade metadataegenskaper som du definierar.

Låt oss se ett exempel. Kreatörerna överför sitt arbete till AEM Assets till den kampanjrelaterade mappen. Det kan vara en pågående resurs som inte har godkänts för användning. Vi vill försäkra oss om att marknadsförarna bara ser godkända mediefiler för den här kampanjen. Vi kan använda metadataegenskaper för att ange att en mediefil har godkänts och kan användas av marknadsförarna.

Så här fungerar det

Om du aktiverar metadatadrivna behörigheter måste du definiera vilka egenskaper för metadata för resurser som ska leda till åtkomstbegränsningar, till exempel"status" eller"varumärke". Dessa egenskaper kan sedan användas för att skapa åtkomstkontrollposter som anger vilka användargrupper som har åtkomst till resurser med specifika egenskapsvärden.

Förutsättningar

Åtkomst till en AEM as a Cloud Service-miljö som uppdaterats till den senaste versionen krävs för att skapa metadatadrivna behörigheter.

OSGi-konfiguration configure-permissionable-properties

För att implementera metadatadrivna behörigheter måste utvecklaren distribuera en OSGi-konfiguration till AEM as a Cloud Service, som möjliggör specifika metadata-egenskaper för resurser för att hantera metadatadrivna behörigheter.

  1. Avgör vilka metadataegenskaper för resurser som ska användas för åtkomstkontroll. Egenskapsnamnen är JCR-egenskapsnamnen på resursens jcr:content/metadata-resurs. I vårt fall blir det en egenskap med namnet status.

  2. Skapa en OSGi-konfiguration com.adobe.cq.dam.assetmetadatarestrictionprovider.impl.DefaultRestrictionProviderConfiguration.cfg.json i ditt AEM Maven-projekt.

  3. Klistra in följande JSON i den skapade filen:

    code language-json
    {
      "restrictionPropertyNames":[
        "status",
        "brand"
      ],
      "enabled":true
    }
    
  4. Ersätt egenskapsnamnen med obligatoriska värden.

Återställ behörigheter för basresurs

Innan du lägger till restriktionsbaserade åtkomstkontrollposter bör en ny post på den översta nivån läggas till för att först neka läsåtkomst till alla grupper som är föremål för behörighetsutvärdering för Assets (t.ex."medarbetare" eller liknande):

  1. Navigera till skärmen Verktyg → Säkerhet → Behörigheter
  2. Markera gruppen Medarbetare (eller någon annan anpassad grupp som alla användargrupper tillhör)
  3. Klicka på Lägg till ACE i skärmens övre högra hörn
  4. Välj /content/dam för Bana
  5. Ange jcr:read som privilegier
  6. Välj Deny som behörighetstyp
  7. Under Begränsningar väljer du rep:ntNames och anger dam:Asset som begränsningsvärde
  8. Klicka på Spara

Neka åtkomst

Bevilja åtkomst till resurser via metadata

Åtkomstkontrollposter kan nu läggas till för att ge läsåtkomst till användargrupper baserat på de konfigurerade egenskapsvärdena för tillgångsmetadata.

  1. Navigera till skärmen Verktyg → Säkerhet → Behörigheter
  2. Välj de användargrupper som ska ha åtkomst till resurserna
  3. Klicka på Lägg till ACE i skärmens övre högra hörn
  4. Välj /content/dam (eller en undermapp) för Sökväg
  5. Ange jcr:read som privilegier
  6. Välj Allow som behörighetstyp
  7. Under Begränsningar väljer du ett av de konfigurerade egenskapsnamnen för resursmetadata i OSGi-konfigurationen
  8. Ange det obligatoriska egenskapsvärdet för metadata i fältet Begränsningsvärde
  9. Klicka på ikonen + för att lägga till begränsningen i åtkomstkontrollposten
  10. Klicka på Spara

Tillåt åtkomst

Metadatadrivna behörigheter används

Exempelmappen innehåller några resurser.

Administratörsvy

När du har konfigurerat behörigheter och angett metadataegenskaperna för resursen i enlighet med detta kommer användare (marknadsföringsanvändare i vårt fall) endast att se godkända resurser.

Marknadsföringsvy

Fördelar och överväganden

Fördelarna med metadatadrivna behörigheter är:

  • Detaljerad kontroll över åtkomsten till materialet baserat på specifika attribut.
  • Frikoppling av åtkomstkontrollprinciper från mappstrukturen, vilket ger en mer flexibel resursorganisation.
  • Möjlighet att definiera komplexa åtkomstkontrollsregler baserat på flera metadataegenskaper.
NOTE
Observera:
  • Metadataegenskaper utvärderas mot begränsningarna med Stränglikhet (=) (andra datatyper eller operatorer stöds ännu inte, för större än (>) eller Date-egenskaper)
  • Om du vill tillåta flera värden för en begränsningsegenskap kan du lägga till ytterligare begränsningar i åtkomstkontrollposten genom att välja samma egenskap i listrutan "Välj typ" och ange ett nytt begränsningsvärde (t.ex. status=approved, status=wip) och klicka på "+" för att lägga till begränsningen i posten
    Tillåt flera värden
  • AND-begränsningar stöds, via flera begränsningar i en enda åtkomstkontrollpost med olika egenskapsnamn (t.ex. status=approved, brand=Adobe) utvärderas som ett AND-villkor, vilket innebär att den valda användargruppen beviljas läsåtkomst till resurser med status=approved AND brand=Adobe
    Tillåt flera begränsningar
  • OR-begränsningar stöds genom att en ny Access Control-post med en metadataegenskapsbegränsning lägger till ett OR-villkor för posterna, t.ex. en enskild post med restriktionen status=approved och en enskild post med brand=Adobe utvärderas som status=approved OR brand=Adobe
    Tillåt flera begränsningar
recommendation-more-help
a483189e-e5e6-49b5-a6dd-9c16d9dc0519