Skip to content

API‐godkjenninger

Bloom edited this page May 6, 2024 · 1 revision

API-godkjenninger er tillatelser som en app må ha for å kunne aksessere og bruke spesifikke API-er. I dette tilfellet er det snakk om Microsoft Graph API, som er et API som gir tilgang til data og funksjonalitet i Microsoft 365-tjenester.

Under finner du en oversikt over de appene og de ulike API-godkjenningene som blir forespurt for at Prosjektportalen 365 skal kunne fungere som forventet.

Prosjektportalen 365 - Portfolio Web Parts

I dette prosjektet er det en spesifikk tillatelse som er forespurt:

Directory.Read.All

Denne tillatelsen ble lagt til i versjon 1.0.0 av Prosjektportalen 365 (30.08.2019). Denne tillatelsen gir appen lesetilgang til all bruker- og gruppeinformasjon i organisasjonens katalog. Denne tillatelsen er nødvendig for å hente informasjon om hvilke grupper en bruker er medlem av.

Hvorfor trenger appen denne tillatelsen? Appen trenger tillatelsen Directory.Read.All for å kunne hente informasjon om grupper som den nåværende brukeren er medlem. Dette er nødvendig for å, eksempelvis, kunne vise prosjekter basert på hvilke grupper brukeren er medlem av.

Hvor brukes dette? Tillatelsen brukes i funksjonen fetchMemberGroups i koden tilhørende data-adapteret for portefølje-webdelene fetchMemberGroups brukes i fetchEnrichedProjects metoden i DataAdapter klassen. Denne metoden henter en liste over prosjekter beriket med tilleggsinformasjon som brukergrupper, brukere og prosjekter. Denne informasjonen behandles deretter videre og brukes i for eksempel Prosjektutlisting-webdelen.

Prosjektportalen 365 - Project Extensions

I dette prosjektet er det to spesifikke tillatelser som er forespurt:

User.Read.All

Denne tillatelsen ble lagt til i versjon 1.9.0 av Prosjektportalen 365 (03.10.2023). Denne tillatelsen lar appen lese data om alle brukere i organisasjonen. Dette er for å hente informasjon om brukere som er tildelt oppgaver i Microsoft Planner.

Hvorfor trenger appen denne tillatelsen? Fordi appen trenger å vite hvilke brukere som er tildelt oppgaver i Microsoft Planner for å kunne vise denne informasjonen.

Hvor brukes dette? I data-adapteret for tiltakshåndtering som brukes i Usikkerhetslisten importeres PlannerTask fra @microsoft/microsoft-graph-types, som er en type definert av Microsoft Graph API for å representere en oppgave i Microsoft Planner. Tillatelsen User.Read.All er nødvendig fordi den gir appen tillatelse til å lese alle brukerprofiler i organisasjonen. Dette er nødvendig for å hente detaljer om brukere som er tildelt oppgaver i Planner. For eksempel, i RiskActionPlannerTask.parse metoden, er det en funksjon getUserInfo som kalles for å hente detaljer om brukeren som er tildelt en oppgave. Denne funksjonen krever User.Read.All tillatelse for å hente nødvendig informasjon fra Microsoft Graph API.

Group.ReadWrite.All

Denne tillatelsen ble lagt til i versjon 1.0.0 av Prosjektportalen 365 (30.08.2019). Denne tillatelsen lar appen lese, oppdatere og slette grupper i organisasjonen, noe som er nødvendig for å opprette nye planer i Microsoft Planner som er knyttet til en bestemt gruppe.

Hvorfor trenger appen denne tillatelsen?

Appen trenger denne tillatelsen fordi den oppretter og administrerer planer i Microsoft Planner på vegne av brukerne. Når en ny plan opprettes, er den knyttet til en bestemt Microsoft 365-gruppe. For å opprette en plan, må appen ha tillatelse til å oppdatere gruppen den er knyttet til. Dette inkluderer å legge til og fjerne medlemmer, endre gruppens innstillinger, og slette gruppen hvis nødvendig. Uten denne tillatelsen, vil ikke appen kunne opprette eller administrere planer i Microsoft Planner.

Hvor brukes dette?

Denne tillatelsen brukes i flere deler av koden. For eksempel, i ProjectSetup operasjonen for PlannerConfiguratjon er det en metode som kjører MSGraphHelper.Post('planner/plans'). Her brukes den til å opprette en ny plan i Microsoft Planner.