Styring af rettigheder i Instans CMS

Dette dokument giver et overblik over mulighederne for at styre rettigheder i Instans CMS. Funktionerne er beskrevet med udgangspunkt i seneste version.

Instans CMS arbejder med fire forskellige rettigheds-typer:

  1. Adgang til cms moduler og funktioner
  2. Adgang til cms indholds-arkiver (se også Datarettigheder)
  3. Adgang til cms indholds-elementer (se også Datarettigheder)
  4. Adgang til sider på websites

Adgang til cms moduler

Du kan tildele adgang til cms-moduler og funktioner til en brugergruppe. Cms brugere opnår således rettighederne gennem medlemsskab af en eller flere brugergrupper. En cms bruger får ved login tildelt fællesmængden af rettigheder, som er tildelt de brugergrupper som han er medlem af.

Tildel rettigheder til en brugergruppe ved at redigere brugergruppen (menuen Brugerstyring -> Grupper) og sæt kryds i de rettigheder, du ønsker at tildele gruppen.

Du kan tildele følgende rettigheder:

Gruppe Rettighed Beskrivelse Internt navn
Administration Må logge ind på cms giver adgang til at logge ind på cms for det site, som gruppen tilhører. CMS_LOGIN
Administration Adgang til at administrere brugere Adgang til menupunktet Brugerstyring -> Brugere CMS_USERS
Administration Adgang til at administrere brugergrupper Adgang til menupunktet Brugerstyring -> Grupper CMS_GROUPS
Administration Adgang til at redigere generelle indstillinger Adgang til menupunktet Generelle indstillinger -> Nøgleord og metatags CMS_GENERAL
Administration Adgang til statistik for hjemmesiden Adgang til menupunktet Statistik CMS_SITESTATS
Administration Må ændre generelle rettigheder til menuer, nyhedsarkiver og kalendere. Adgang til menupunktet Generelle indstillinger -> Rettigheder CMS_GENERALPERMISSIONS
Billedarkiv Adgang til billedarkiv Adgang til menupunktet Billedarkiv CMS_PICTUREARCHIVE
Billedarkiv Sætte rettigheder på billedmapper Brugeren må sætte rettigheder på billedmapper, vælg en billedmappe og klik indstillinger. CMS_SETDATAPERMISSIONS_PICTUREARCHIVE_FOLDERS
Blogs Adgang til at oprette / redigere / slette indlæg på relevante blogs. Adgang til menupunktet Weblogs -> Blog CMS_BLOGS
Blogs Adgang til at oprette nye blogs og redigere / slette eksisterende blogs. Adgang til menupunktet Weblogs -> Blog manager CMS_BLOGMANAGER
Blogs Adgang til at slette / sammenlægge tags Adgang til menupunktet Weblogs -> Tags CMS_TAGMANAGER
Filarkiv Adgang til filarkiv Adgang til menupunktet Filarkiv CMS_FILEARCHIVE
Formularer Adgang til formular-editor Adgang til menupunktet Formular CMS_FORMS
Frontend-rettigheder Må logge ind på hjemmesiden (frontend) Sæt adgang på den enkelte side. FE_LOGIN
Kalender Adgang til kalender-redigering Adgang til menupunktet Kalender CMS_EVENTS
Kalender Brugeren må ændre rettigheder til kalenderarkiver Sættes i menupunktet "Generelle indstillinger -> Rettigheder" CMS_SETDATAPERMISSIONS_CALENDARS
Kalender Brugeren må ændre rettigheder til enkeltbegivenheder Rettigheder sættes på den enkelte begivenhed CMS_SETDATAPERMISSIONS_EVENTS
Nyheder Adgang til nyheds-redigering Adgang til menupunktet Nyheder CMS_NEWS
Nyheder Brugeren må ændre rettigheder til nyhedsarkiver Sættes i menupunktet "Generelle indstillinger -> Rettigheder" CMS_SETDATAPERMISSIONS_NEWSFEEDS
Nyheder Brugeren må ændre rettigheder til enkeltnyheder Rettigheder sættes på den enkelte nyhed CMS_SETDATAPERMISSIONS_NEWS
Nyhedsbrev Adgang til at oprette/redigere nyhedsbrev-skabeloner Adgang til menupunkterne Nyhedsbrev -> Skabeloner, Nyhedsbrev -> Interessekategorier, Nyhedsbrev -> Import CMS_NEWSLETTERADMIN
Nyhedsbrev Adgang til at udsende nyhedsbreve/td> Adgang til menupunktet Nyhedsbrev -> Udsend nyhedsbrev CMS_NEWSLETTERSEND
Shop-rettigheder Bruger kan se og ændre grupperabatter i shoppen   CMS_SHOPDISCOUNTS
Shop-rettigheder Brugeren kan se ordrehistorik   CMS_SHOPORDERHISTORY
Shop-rettigheder Bruger kan redigere varer og varegrupper i shoppen   CMS_SHOPPRODUCTS
Shop-rettigheder Brugeren har adgang til at se shop-siderne på websitet   FE_SHOPBROWSE
Shop-rettigheder Brugeren har lov til at lægge varer i indkøbskurven og checke ud (frontend rettighed)   FE_SHOPCHECKOUT
Shop-rettigheder Brugeren har adgang til at se priser i shoppen (frontend rettighed)   FE_SHOPVIEWPRICES
Sider Adgang til bogværktøj Deprecated, modul understøttes ikke længere CMS_BOOKMAKER
Sider Adgang til side-redigering   CMS_PAGES
Sider Brugeren må ændre rettigheder til menuer Sættes i menupunktet "Generelle indstillinger -> Rettigheder" CMS_SETDATAPERMISSIONS_MENUS
Sider Brugeren må ændre rettigheder til enkeltsider Sættes på den enkelte side, fanebladet "Rettigheder" CMS_SETDATAPERMISSIONS_PAGES
Sider Adgang til redigering af brugerdefinerede bokse Adgang til menupunktet Bokse CMS_CUSTOMBOXES

Til udviklere om adgang til cms moduler og funktioner

Hvis du ønsker at benytte dine egne rettigheder, f.eks. i forbindelse med et specialudviklet cms_plugin, skal rettigheden oprettes i PERMISSIONS-tabellen med reference til en gyldig række i PERMISSIONGROUPS-tabellen. Så vil rettigheden optræde på listen til afkrydsning.

Rettigheder checkes med funktionerne checkPermission (cms/backend) eller checkPermissionFE (website/frontend), som returnerer boolean true hvis brugeren har rettigheden, ellers boolean false.

Adgang til cms indholds-arkiver

Det er muligt at afgrænse adgangen på arkiv-niveau (pt. implementeret for menuer, nyhedsarkiver, kalendre og billedarkiver). Grundprincipper i rettighedsstyring på arkiv-niveau er at hvis der ikke eksplicit er givet rettigheder til brugere eller brugergruppper, har alle adgang. Derfor er udgangspunktet at alle brugere med adgang til modulet/menupunktet, kan redigere alt indhold. Ved at tildele rettigheder til en eller flere brugere/grupper, afskærer man samtidig alle andre fra adgang til arkivet.

For at sætte arkivrettigheder skal brugeren være i en gruppe, som er tildelt rettigheden CMS_GENERALPERMISSIONS. Denne rettighed giver adgang til menupunktet Generelle indstillinger -> Rettigheder, hvor arkiv-rettigheder for menuer, nyhedsarkiver og kalendre redigeres (se hvordan i afsnittet Datarettigheder). Bemærk at brugere med rettigheden CMS_GENERALPERMISSIONS altid har adgang til alle arkiver, uanset hvilke rettigheder, der er sat på dem. Denne rettighed bør derfor kun tildeles administratorer.

Rettigheder til billedarkiver sættes under det enkelte billedarkiv. Vælg billedarkivet og tryk på "indstillinger". Ellers er fremgangsmåden som beskrevet herover.

Eksempel: På en hjemmeside er der to nyhedsarkiver: "Seneste nyt" og "Nyt fra bestyrelsen". Brugere i gruppen "indholdsredaktører" må redigere begge nyhedsarkiver, mens brugere i gruppen Bestyrelse kun må redigere nyheder i "Nyt fra bestyrelsen". Dette kan opnås ved at (1) give begge brugergrupper adgang til nyhedsmodulet (rettigheden CMS_NEWS) og (2) eksplicit tildele gruppen "Indholdsredaktører" adgang til nyhedsarkivet "Seneste nyt". Det er også muligt at tildele arkiv-rettigheder til enkeltbrugere. I afsnittet Datarettigheder kan du se, hvordan du tildeler arkiv-rettigheder.

Til udviklere om cms sites som indholds-arkiver / adgang til redigering af hele sites

Hvis en cms installation indeholder flere sites, er der normalt tilstrækkeligt at oprette en admini-gruppe til hvert site og tildele den rettigheden "CMS_LOGIN". Så skal man være medlem i admin-gruppen for hvert site for at få adgang til det ved login.

I særlige tilfælde vil det imidlertid være nemmere at administrere, hvis administrator-gruppen er delt mellem alle sites (sæt GROUPS.SITE_ID = 0). i dette tilfælde kan arkiv-rettigheder benyttes til at begrænse adgangen til redigering af et site til udvalgte administratorer. Der er ikke nogen brugerflade til denne funktionalitet. for at tildele adgang til et site til en specifik bruger (og dermed blokere for adgang fra andre), kan man manuelt oprette en eller flere rækker i tabellen DATA_PERMISSIONS. Brug blot SITES som tabelnavn.

Til udviklere om implementering af egne arkiv-rettigheder

Se afsnittet Til udviklere om implementering af egne datarettigheder.

Adgang til cms indholds-elementer

Det er muligt at afgrænse adgangen til indholds-elementer. Pt. er adgangsbegrænsning til enkelte indholds-elementer implementeret for sider, nyheder og kalenderbegivenheder.

Grundprincipper i rettighedsstyring på element-niveau er, at hvis der ikke eksplicit er givet rettigheder til brugere eller brugergruppper, har alle adgang. Derfor er udgangspunktet at alle brugere med adgang til arkivet (menuen, nyhedsarkivet, kalenderen), kan redigere alt indhold. Ved at tildele rettigheder til en eller flere brugere/grupper, afskærer man samtidig alle andre fra adgang til indholds-elementet.

Eksempel: En redaktørgruppe (I gruppen "Indholdsredaktører") har besluttet at åbne op for at alle medarbejdere (placeret i gruppen "Medarbejdere") må redigere indhold på hjemmesiden. Dog ønsker de stadig, at kun medlemmer af gruppen "indholdsredaktører" kan rette på siderne "Home" og "Kontakt". Det kan de opnå ved at redigere de to sider og på fanebladet "Rettigheder" give adgang til gruppen "Indholdsredaktører" (se hvordan i afsnittet Datarettigheder). Nu har kun medlemmer i den gruppe adgang til siderne og deres undersider. Det er også muligt at give rettigheden til enkelte medarbejdere uden at opgradere dem til indholdsredaktører.

Til udviklere om implementering af egne rettigheder til indholds-elementer

Se afsnittet Til udviklere om implementering af egne datarettigheder.

Adgang til sider på websites

Man kan begrænse rettigheder til enkelte sider på websitet, så brugere skal være logget ind for at kunne besøge dem. Hvis man prøver at besøge en side, hvor adgang er begrænset, vil man blive bedt om at logge ind. ved login checker systemet, om man tilhører en af de brugergrupper, som har adgang til siden.

Du kan bestemme hvilke brugergrupper, der har lov til at besøge en konkret side ved at redigere siden og afkrydse de ønskede grupper på fanebladet "Rettigheder". Bemærk, at gruppen skal være tildelt rettigheden FE_LOGIN for at kunne logge ind på hjemmesiden.

Datarettigheder

Datarettigheder er fællesbetegnelsen for rettigheder på arkiv-niveau (f.eks. nyhedsarkiv eller menu) og på indholds-element niveau (f.eks. nyhed eller side).

En standard installation af Instans CMS indeholder følgende datarettigheder:

Gruppe Rettighed Beskrivelse Internt navn
Administration Brugeren har adgang til kalenderen under "Kalender" Datarettigheden sættes i menupunktet Generelle indstillinger -> Rettigheder DATA_CMS_CALENDAR_ACCESS
Administration Brugeren har adgang til menuen under "Sider" Datarettigheden sættes i menupunktet Generelle indstillinger -> Rettigheder DATA_CMS_MENU_ACCESS
Administration Brugeren har adgang til nyhedsarkivet under "Nyheder" Datarettigheden sættes i menupunktet Generelle indstillinger -> Rettigheder DATA_CMS_NEWSARCHIVE_ACCESS
Billedarkiv Brugeren må tilføje / redigere / slette billeder i mappen Datarettigheden sættes i funktionen "Indstillinger" på den enkelte billedmappe DATA_PICTUREARCHIVE_MANAGEFOLDER
Billedarkiv Brugeren må benytte billeder fra mappen til indholdsredigering Datarettigheden sættes i funktionen "Indstillinger" på den enkelte billedmappe DATA_PICTUREARCHIVE_USEINCMS
Blogs Brugere må skrive indlæg på bloggen Rettigheden sættes i menupunktet Weblog -> Blog Manager, fanebladet "Rettigheder" DATA_CMS_BLOG_PUBLISH
Blogs Brugere har adgang til at kommentere på bloggen Rettigheden sættes i menupunktet Weblog -> Blog Manager, fanebladet "Rettigheder" DATA_FE_BLOG_COMMENT
Blogs Brugere har adgang til at læse bloggen Rettigheden sættes i menupunktet Weblog -> Blog Manager, fanebladet "Rettigheder" DATA_FE_BLOG_READ
Kalender Brugeren har adgang til at redigere / slette arrangementet Rettigheden sættes på den enkelte begivenhed, fanebladet "Rettigheder" DATA_CMS_EVENT_ACCESS
Nyheder Brugeren har adgang til at redigere / slette nyheden Rettigheden sættes på den enkelte nyhed, fanebladet "Rettigheder" DATA_CMS_NEWSITEM_ACCESS
Sider Brugeren har adgang til at redigere / slette siden Rettigheden sættes på den enkelte side, fanebladet "Rettigheder" DATA_CMS_PAGE_ACCESS

Til udviklere om implementering af egne datarettigheder

Det er enkelt at oprette nye datarettigheder, som kan anvendes i nye moduler, plugins eller lignende.

  1. Rettigheden oprettes i databasen. Opret række i tabellen PERMISSIONS - husk at feltet IS_DATAPERMISSION skal have værdien 1.
  2. Brugerflade til indstilling af datarettigheder, genereres med kald til funktionen datapermission_set (findes i /cms/common.inc.php, se inline dokumentation), eksempel: echo datapermission_set("DATA_CMS_PAGE_ACCESS", "PAGES", $_GET["id"]);
  3. Check af data-rettighed kan ske med funktionen check_data_permission (findes i /cms/sharedfunctions.inc.php, se inline dokumentation).
Lavet med Instans CMS - nem og enkel redigering af hjemmesider.