Jdi na navigaci

.fit-pages.yml

Následující stránka popisuje způsobem konfigurace souboru .fit-pages.yml. Konfigurační soubor mimo jiné umožňuje konfigurovat systém oprávnění prostřednictvím účtu ČVUT a rolí pro jednotlivé stránky a nebo větve.

Soubor .fit-pages.yml musí být ve formátu YAML (s kódováním UTF-8) a mít následující strukturu[1]:

  • domain: (string, optional) – Celá doména, povinné pouze pro stránky mimo pages.fit a courses.fit.cvut.cz.
  • access: (object)
    • <branch>: (object) – Název větve (nebo více větví) na které se má aplikovat následující pravidlo. Lze použít výraz místo konkrétního názvu (použijte * pro všechny větve). Na pořadí pravidel záleží – první aplikovatelné pravidlo vítězí.
      • <page-path>: (object) – Relativní cesta stránky na kterou se má aplikovat dané pravidlo. Podstránky jsou implicitně zahrnuty, a není tak potřeba je blíže specifikovat. Relativní cesta musí začínat /. Na pořadí pravidel záleží – první aplikovatelné pravidlo vítězí.
      • allow: (array[string]) – Seznam základních rolí (ANONYMOUS nebo AUTHENTICATED), byznys rolí nebo uživatelských jmen.
      • deny: (array[string], optional) – Seznam základních rolí (ANONYMOUS nebo AUTHENTICATED), byznys rolí nebo uživatelských jmen.

Uživateli bude na stránku umožněn přístup právě když disponuje některou z uvedených rolí v allow seznamu (nebo je v něm explicitně uvedeno jeho uživatelské jméno) a zároveň neplatí, že disponuje některou z uvedených rolí v deny seznamu (nebo je v něm explicitně uvedeno jeho uživatelské jméno). V opačném případě bude uživateli přístup odepřen.

Důležité:

Přístupová práva na PagesFIT jsou zcela nezávislá na přístupových právech zdrojového repositáře na GitLabu! To znamená, že pokud potřebujete omezit přístup na celé stránky či vybrané části jen pro vybranou podmnožinu přihlášených uživatelů, resp. zabránit přístupu ostatním, tak musíte viditelnost zdrojového repositář nastavit na Private.

Ukázka 1. Ukázka .fit-pages.yml
domain: pages.fit.cvut.cz

access:
  master:
    /interni-dokumenty/:
      allow:
        # Vedeni laboratore
        - flynnkev
        - novakjan
        # FIT gremium
        - B-18000-GREMIUM-CLEN
    /:
      allow:
        - B-18000-SUMA-PRACOVNIK
  "*":
    /:
      allow:
        - B-18000-OSOBA-CVUT
      deny:
        - eilisbill

Předchozí ukázka určí přístupová práva následovně:

  • Na stránku (a její podstránky) /interni-dokumenty/ ve větvi master je umožněn přístup uživatelům flynnkev, novakjan a všem uživatelům s byznys rolí B-18000-GREMIUM-CLEN. Na ostatní stránky v dané větvi je umožněn přístup všem uživatelům s byznys rolí B-18000-SUMA-PRACOVNIK.
  • Na ostatní stránky v ostatních větvích je umožněn přístup uživatelům s byznys rolí B-18000-OSOBA-CVUT, mimo osobu eilisbill.

  1. Notace použitá pro popis struktury YAML souboru je inspirovaná z MSON.