Hoppa till huvudinnehåll

Åtkomsträttigheter

Åtkomsträttigheter avgör vem som når en enskild resurs, och på vilken nivå. En enhet, en dashboard, en connector, en regel - var och en har sin egen lista över vilka som har åtkomst till den.

De är en av tre skilda mekanismer, och det är värt att hålla isär dem:

Svarar på
RollerVad en användare över huvud taget får göra - läsa, ändra, administrera
ÅtkomsträttigheterVilka resurser användaren når, och på vilken nivå
AnvändargrupperVilka som får de åtkomsträttigheterna tillsammans

En roll utan åtkomsträttigheter når ingenting. Åtkomsträttigheter utan rollen är inte heller användbara. Båda måste stämma överens.

Tabellen för åtkomsträttigheter, med användare mot nivåerna admin, write, read och peek

Vad som räknas som en resurs​

Nästan allt du skapar i Yggio är en resurs, och varje resurs bär sina egna åtkomsträttigheter. Enheter är bara en sort. En dashboard, en connector, en bild, en rapportmall och en organisation är alla resurser, var och en med en ägare och en lista över vilka andra som når den.

ResursVad det är
deviceEn iotnod
deviceGroupEn namngiven grupp av enheter
dashboardEn dashboard och dess widgetar
connectorEn anslutning till en nätverksserver eller ett externt system
geofenceEtt utritat område på kartan
ruleV2En regel i Rule Engine
flowEtt dataflöde
calculationEn beräkningsdefinition
imageEn uppladdad bild, till exempel en planritning eller ett enhetsfoto
reportbaseEn uppladdad rapportmall
reportScheduleEn schemalagd rapportkörning
appEn installerad app
vsmAppEn .vso-applikation för sensorer med Sensative VSM
aiModelEn driftsatt AI-modell
basicCredentialsSetEtt lagrat par av användarnamn och lösenord som integrationer använder
oauthClientEn registrerad klientapplikation
contactEn kontakt som notifieringar använder
userGroupEn användargrupp
organizationEn organisation
orgUnitEn enskild enhet i ett organisationsträd

Nivåerna nedan betyder samma sak oavsett vilken av dessa du tittar på. Samma typer förekommer i API:et som resourceType; se Modeller för hur var och en ser ut.

Nivåerna​

NivåVad den tillåter
AdminFull kontroll över resursen: att dela den, att sätta dess åtkomsträttigheter och att ta bort den. Innefattar alla nivåer under. Den kan inte överföra ägarskapet
WriteÄndra resursen - dess namn, dess beskrivning, dess inställningar. Möjliggör downlink där enheten stödjer det
ReadSe resursen och dess data, och öppna en channel för att prenumerera på dess uppdateringar
PeekSystemet får läsa resursen, men den syns inte i användarens enhetslista. Används mest för att ge åtkomst till en connector
OwnerÄger resursen. Alltid exakt en användare - aldrig en användargrupp eller en organisation. Har allt som admin har, och är ensam om att kunna överföra ägarskapet. Det är den enda nivån som inte kan ges som en åtkomsträttighet: ägarskap flyttas genom att överföras till en annan användare

Peek ger åtkomst utan synlighet. Använd den när ett konto behöver lägga till enheter via en connector utan att se alla enheter som redan finns på den.

Var de finns​

Kontrollpanelen har en panel för åtkomsträttigheter för sex sorters resurser:

ResursVar
En enhetAccess rights i enhetens sidopanel, på Enhetsdetaljer
Flera enheterVälj flera
En enhetsgruppGruppens rad i enhetslistan
En dashboardManage dashboard, på dashboarden
En connectorConnectorns egen sida
Ett geofenceManage geofences, i kartans sidopanel
En regelÅtkomstknappen i verktygsraden i Rule Engine

Resurser utan delningspanel​

Övriga resurstyper i tabellen ovan har åtkomsträttigheter, men ingen panel att redigera dem i. Bilder är ett exempel: en planritning eller ett enhetsfoto kan ägas och delas via API:et, men det finns inget fält i kontrollpanelen för att ge en användare åtkomst till en bild.

Två alternativ:

  • Tilldela resursen till en organisationsenhet, vilket Organisationshanteraren kan göra för bilder, appar, rapportmallar och basic credentials sets. Alla med åtkomst till den enheten når då resursen.

  • Ge rättigheten direkt via API:et. I Swagger UI, under AccessRights, tar POST /access-rights/resource emot resursen och subjektet:

    {
    "resourceType": "image",
    "resourceId": "<bildens id>",
    "subjectType": "singleton",
    "subjectId": "<användarens id>",
    "scope": ["read"]
    }

    subjectType anger vilken sorts subjekt du ger åtkomst till, och avgör vad subjectId ska vara:

    subjectTypeGer åtkomst tillsubjectId är
    singletonEn användareAnvändarens Keycloak-id, ett UUID som 1f8d4c2e-9b73-4a15-8e60-2c7f5a91b3d4
    groupEn användargruppGruppens _id, en 24 tecken lång hexsträng som 507f1f77bcf86cd799439011
    orgUnitEn organisationsenhetEnhetens åtkomstsubjekt-ref, organization_<organizationId>_unit_<unitId>_<scope> - inte enhetens id i sig

    singleton är kontrollpanelens eget begrepp för en enskild användare, och är det den skickar. user accepteras som alias för det, så båda fungerar.

    resourceId är resursens eget _id, en 24 tecken lång hexsträng.

    DELETE /access-rights/resource tar emot samma värden som query-parametrar och tar bort rättigheten igen. GET /access-rights/resource/{id} listar vilka som just nu har åtkomst till en resurs.

    Note: GET /access-rights/subject/{id} är undantaget. Dess query-parameter subjectType accepterar bara user eller group, och har user som standard. Att skicka singleton där avvisas.

Vad du kan dela​

Du kan visa och redigera åtkomsträttigheter på en resurs du äger, och på en resurs du har admin på. Admin innebär rätten att dela resursen och att ta bort den, tillsammans med allt som nivåerna under tillåter. Ägarskapet är det enda admin inte innebär: att överföra det är förbehållet ägaren, som beskrivs under Byta ägare.

Med flera resurser valda begränsas panelen till dem du kan hantera och talar om hur många av urvalet det är - "Showing access rights for owned devices only (3 of 12)". Meddelandet säger owned, men räkningen omfattar även resurser du har admin på utan att äga. Kan du inte hantera någon av dem står det i stället det.

Du kan heller inte redigera din egen åtkomst till en resurs medan du är inloggad som den användaren.

Ge åtkomst​

  1. Öppna panelen för åtkomsträttigheter för resursen.
  2. Välj om du ger åtkomst till en Organization, en User eller en User group.
  3. För en användare eller grupp, skriv användarnamnet eller gruppnamnet. Ett namn som inte matchar rapporteras som att det inte kan hittas - kontrollera stavningen snarare än att utgå från att kontot inte finns.
  4. För en organisation, välj enheten att dela på. Varje medlem i den enheten och i enheterna ovanför får åtkomst på den nivå de har i sin egen enhet, så det finns inga nivåer att kryssa i. Medlemmar i enhetens underenheter får inte åtkomst. Delningen görs för ägarens räkning: du behöver vara administratör för organisationen eller förvaltare av enheten, och ägaren måste vara medlem i organisationen. En resurs kan delas på ett ställe per organisation; för att flytta den, sluta dela den först under enhetens flik Resources i Organisationshanteraren.
  5. För en användare eller en grupp, kryssa i nivåerna som ska ges.

Alla med åtkomst visas i tabellen nedanför, med en bock för de nivåer de har och ett kryss för dem de saknar.

Att ge åtkomst till en användargrupp i stället för till sex personer gör att den sjunde personen hanteras genom att läggas till i gruppen, utan att någon öppnar resursen igen.

Byta ägare​

Change owner överför ägarskapet, och bara den nuvarande ägaren kan göra det. Admin räcker inte, så knappen visas på resurser du äger och ingen annanstans. Bekräftelsen talar om hur många av de valda resurserna du faktiskt äger och vem den nya ägaren blir, eftersom bara de överförs.

Ägarskap är exklusivt. Att överföra det till någon annan lämnar ingen kopia kvar hos dig.

Dela en dashboard​

Panelen Manage dashboard, där en dashboards åtkomsträttigheter sätts

En dashboard delas från Manage dashboard, som också listar Connected devices access.

Båda halvorna behövs. Dashboarden i sig är en tom ram: widgetarna finns där, men en användare utan åtkomst till enheterna bakom dem ser ingen data. Dela de anslutna enheterna nedanför också.