-
Notifications
You must be signed in to change notification settings - Fork 16
Home
Prosjektportalen 365 er en samhandlingsløsning for Microsoft 365. Prosjektportalen er basert på Difis Prosjektveiviser. Dette er en implementasjon av Prosjektportalen for Microsoft 365, der porteføljeområdet settes opp som et hub-område og hvert prosjekt opprettes som en Microsoft 365 gruppe.
📖 Table of Contents
- ➤ Om Prosjektportalen 365
- ➤ Fotavtrykk i Microsoft 365
- ➤ Om datatilgjengelighet, rettigheter og tilganger
-
➤ Installasjonsveiledning
- ➤ Installasjon ved hjelp av installasjonsskriptet
- ➤ Oppgradering
- ➤ Feilsøking av løsningen etter installasjon
- ➤ Tilpasninger i Prosjektportalen 365
Løsningen er åpen kildekode uten lisensiering og bindinger, og alle står fritt til å ta løsningen i bruk og bruke den så mye som de ønsker. Merk at dette er ikke er et produkt som noen selger, og løsningen har derfor ingen garantier om feilretting, tid til retting av feil, oppgradering til nyere versjoner eller support. Puzzlepart tilbyr forvaltningsavtale for kunder som ønsker en slik sikkerhet, ta kontakt med prosjektportalen@puzzlepart.com.
Løsningen settes opp i kundens egen tenant, og har ikke avhengigheter til eksterne tjenester utenfor Microsoft 365. Løsningen bruker heller ikke Azure eller Flow.
Følgende blir installert i Microsoft 365-tenanten:
- En Microsoft 365 gruppe settes opp som porteføljeområde og blir et hub-område for prosjektene
- Site script og site design installeres i tenanten og blir tilgjengelig som områdemal for samhandling. Merk at tilgangen til områdemalen kan begrenses til en AD-gruppe med PowerShell-konfigurasjon.
- App-pakker lastes opp i app-katalogen - disse inkluderer API-forespørsler som må godkjennes av Global Admin.
- Taksonomigruppe med termset og Søkemappinger i søketjenesten på tenant-nivå.
Prosjektområder settes opp som egne Microsoft 365 grupper, og dataene i prosjektet blir tilhørende området. Teams-samtaler, dokumenter, Planner-oppgaver, listelementer osv. er kun tilgjengelig for personer som har tilgang til prosjektet. Videre er det ikke mulig med "lesetilgang" til Teams og Planner, derfor krever dette medlemstilgang i prosjektet. Prosjektegenskaper lagres også i prosjektet, men synkroniseres opp til en skjult, sentral liste på porteføljeområdet. Dette gjøres automatisk i bakgrunnen av en bruker med tilgang. Prosjektstatuser lagres også i en skjult liste på porteføljeområdet. På grunn av dette anbefaler vi at brukere av Prosjektportalen 365 som skal rapportere prosjektegenskaper og prosjektstatus også får medlemstilgang på porteføljeområdet.
[Om datatilgjengelighet, rettigheter og tilganger]
- Medlemmer og eiere av porteføljeområdet vil på forsiden se prosjektene de er medlemmer eller eiere av. Man kan se på dette som "Mine prosjekter".
- Medlemmer av porteføljeområdet vil på porteføljeoversikten se prosjektene de er medlemmer eller eiere av, samt "Offentlige" ("Public") prosjekter (Microsoft 365 grupper)
- Eiere av porteføljeområdet vil på porteføljeoversikten se alle prosjekter. De får kun navigert til prosjektene de er medlemmer eller eiere av, samt "Offentlige" prosjekter
- Medlemmer og eiere av porteføljeområdet vil på de andre oversiktsidene se innhold fra prosjektene de er medlemmer eller eiere av, samt "Offentlige" ("Public") prosjekter
- Medlemmer av SharePoint-gruppen "Porteføljeinnsyn" vil på porteføljeoversikten se alle prosjekter. De får kun navigert til prosjektene de er medlemmer eller eiere av, samt "Offentlige" prosjekter
I prosjektene gjelder vanlig Microsoft 365 rettighetskonfigurasjon.
NB: Dersom du har flere instanser av Prosjektportalen i tenanten bør alle Prosjektportalen-instanser oppgraderes når Prosjektportalen skal oppgraderes. Dette skyldes at flere komponenter i løsningen deles på tvers av PP-instanser. Oppgraderingen gjøres på samme måte som for installasjon, men ved at skriptet kjøres med -Upgrade switchen.
Pakk ut den (siste) zip-pakken for installasjon som er lastet ned fra releases. Filen du skal laste ned har navn på format pp365-X.X.X.XXXXXXX.zip. Eksempel:
I denne installasjonspakken finner du følgende filer
- Mappen 'Apps': Inneholder apper som installeres til app-katalogen i tenanten
- Mappen 'Scripts': Inneholder scripts som brukes av installasjonsskriptet. Inneholder også et eget oppgraderingsskript som kjøres on-demand.
- Mappen 'SharePointPnPPowerShellOnline': PnP PowerShell filene som brukes for å kommunisere med SharePoint Online
- Mappen 'SiteScripts': Inneholder konfigurasjon for Prosjektområdemal (site scripts og site designs)
- Mappen 'Templates': Inneholder en pakke med konfigurasjon for porteføljeområdet samt en egen pakke for taksonomi
- Filen Install.ps1: PowerShell-skriptet som installerer løsningen
- Filen SearchConfiguration.ps1: Søkeknofigurasjon for Prosjektportalen som lastes automatisk opp til søketjenesten i SharePoint Online
Se egen side Feilsøking installasjon
- PnP Management Shell er godkjent for bruk i tenanten
- Brukeren det installeres med er SharePoint Admin
- Brukeren det installeres med er Term Store Admin (se steg 1 under)
- Det finnes et appkatalogområde i tenanten (se steg 2 under), som brukeren må ha tilgang til
- En global admin kan godkjenne API-forespørsler etter installasjon
Prosjektportalen installeres med et PowerShell-script som kjøres lokalt på maskinen som skal installere løsningen. For å kjøre scriptet kreves det at det gis tilgang til å kjøre PowerShell-script. Dette kan gjøres ved å åpne PowerShell og kjøre følgende kommando:
Set-ExecutionPolicy RemoteSigned
Videre må vi registrere appen PnP Managment Shell i Azure AD. Dette gjøres èn gang for appen PnP Management Shell. Denne applikasjonen ber kun om delegerte rettigheter. Årsaken til at man må registrere denne applikasjonen er at Prosjektportalen 365 bruker PnP PowerShell for installering. Denne modulen benytter API'er som krever at vi har en registrering i AD som tillater at appen blir kjørt overhode. Dette er en fordel, siden dere kan ved et senere tidspunkt fjerne appen igjen og dermed skru av muligheten til å kjøre PnP PowerShell mot deres Tenant. Ved at det er delegerte rettigheter er det kun de rettighetene brukeren har i det de kjører scriptet som blir brukt.
For å registrere appen kjører du følgende kommando i PowerShell:
Register-PnPManagementShellAccess
Et nettleservindu blir åpnet og du må logge inn. Etter innlogging vil du se følgende dialog:
Er du ikke Microsoft 365 global administrator, kan du allikevel kjøre følgende kommando og sende lenken som blir generert til en med global administrator rettigheter.
Register-PnPManagementShellAccess -ShowConsentUrl
I SharePoint admin-senteret, sjekk at termlageret er på riktig språk (sannsynligvis bør standardspråk være på norsk - default er engelsk. Organisasjonen bør selv vurdere hva som er riktig). Verifiser også at brukeren som skal installere løsningen er Administrator for termlager.
PS: For å endre språk må man først sette administrator og lagre siden.
I SharePoint admin-senteret, gå til apper og velg "App-katalog". Du vil der få beskjed om app-katalogen finnes eller ikke. Dersom du får mulighet til å opprette den gjør du det.
Fyll deretter ut navn, URL, annet på app-katalog-oppsettet. Akkurat hva du fyller ut er opp til deg.
PS: Dersom du må opprette app-katalog må du vente noen minutter til området er opprettet før du fortsetter. Det kan også være en idè å bruke parameteren TenantAppCatalogUrl i Install.ps1 i neste steg, i tilfellet det tar noe tid før SharePoint får med seg at app-katalogen finnes.
Kjør Install.ps1 med riktige parametere, se eksempler og mer detaljer nedenfor.
Eksempel 1
Installerer Prosjektportalen 365 til /sites/prosjektportalen.
.\Install.ps1 -Url "https://tenant.sharepoint.com/sites/prosjektportalen"
Eksempel 2
Installerer Prosjektportalen 365 til /sites/prosjektportalen og bruker weblogin for å autentisere (i tilfelle MFA).
.\Install.ps1 -Url "https://tenant.sharepoint.com/sites/prosjektportalen" -Interactive
Eksempel 3
Installerer Prosjektportalen 365 til /sites/prosjektportalen og apper til /sites/app_catalog. Skipper loading av PnP PowerShell fordi det allerede er installert på maskingen
.\Install.ps1 -Url "https://tenant.sharepoint.com/sites/prosjektportalen" -SkipLoadingBundle -TenantAppCatalogUrl "https://tenant.sharepoint.com/sites/app_catalog"
Eksempel 4
Oppgraderer Prosjektportalen 365 (/sites/prosjektportalen) og bruker weblogin for å autentisere.
.\Install.ps1 -Url "https://tenant.sharepoint.com/sites/prosjektportalen" -Interactive -Upgrade
Install.ps1 [-Url <String>]
[-Title <String>]
[-GenericCredential <String>]
[-Interactive <switch>]
[-SkipTemplate <switch>]
[-SkipSiteDesign <switch>]
[-SkipAppPackages <switch>]
[-SkipSiteCreation <switch>]
[-SkipSearchConfiguration <switch>]
[-SkipLoadingBundle <switch>]
[-Upgrade <String>]
[-SiteDesignName <String>]
[-SiteDesignSecurityGroupId <String>]
[-TenantAppCatalogUrl <String>]
Parametere
Parameter | Type | Required | Description |
---|---|---|---|
Url | String | True | URL for portalområdet. |
Title | String | False | Tittel for portalområdet. Om ingenting spesifiseres, brukes 'Prosjektportalen'. |
Interactive | switch | False | Bruk nettleser for å koble til SharePoint, logger inn med brukerens rettigheter |
SkipTemplate | switch | False | Ikke installer malverk. Brukes gjerne om du allerede har lagt på malverket. |
SkipSiteDesign | switch | False | Ikke installer site design og site scripts. Brukes gjerne om du allerede har installert disse. |
SkipAppPackages | switch | False | Ikke installert app-pakker. Brukes gjerne om du allerede har installert disse. |
SkipSiteCreation | switch | False | Ikke opprett området. Brukes om du har opprettet dette selv. |
SkipSearchConfiguration | switch | False | Ikke importer søkekonfigurasjon. |
SkipLoadingBundle | switch | False | Hvis du har PnP-PowerShell installert på maskinen allerede, kan du droppe å laste PnP-PowerShell fra installasjonspakken. |
Upgrade | switch | False | Hvis du skal oppgradere en eksisterende installasjon. |
SiteDesignName | String | False | Navn på Site Design. Om ingenting spesifiseres, brukes 'Prosjektområde'. |
SiteDesignSecurityGroupId | String | False | Sikkerhetsgruppe ID om du vil styre hvem som skal kunne opprette prosjektområder. |
TenantAppCatalogUrl | String | False | URL til app-katalogen. Kan være grei å bruke dersom du nettopp har opprettet en app-katalog. |
Global admin må godkjenne to API-forespørsler på API Administrasjon-siden under SharePoint i Office 365 admin center. URL vil være på formen https://tenant-admin.sharepoint.com/_layouts/15/online/AdminHome.aspx#/webApiPermissionManagement.
Global admin / SharePoint admin må angi tilganger til hvem som kan assosiere Prosjektområdene med Prosjektportalen-hubområdet. Dette gjøres under "Active sites"/"Aktive områder" i SharePoint admin senteret, URL vil være på formen https://tenant-admin.sharepoint.com/_layouts/15/online/AdminHome.aspx#/siteManagement. Velg Prosjektportalen-hubsiten og velg "Hub" --> "Rediger innstillinger for hubområde".
Gi tilgang til de som skal kunne knytte prosjekter til hubområdet, du kan f.eks. velge Office 365 gruppen som ble opprettet som en del av porteføljeområdet, eller "Employees" for å gi alle muligheten.
Gå til porteføljeområdet og sjekk at løsningen er installert og du ikke får noen feilmeldinger.
Denne siden beskriver hvordan Prosjektportalen oppgraderes. Les gjerne gjennom Installasjonsbeskrivelsen for forutsetninger og mer detaljer om installasjonsskriptet.
Det kan være lurt å ta en sjekk på hva som kan blir påvirket ved en oppgradering, sjekk ut Hva blir påvirket ved oppgradering.
Pakk ut den (siste) zip-pakken for installasjon som er lastet ned fra releases. Filen du skal laste ned har navn på format pp365-X.X.X.XXXXXXX.zip. Eksempel:
I denne installasjonspakken finner du følgende filer
- Mappen 'Apps': Inneholder apper som installeres til app-katalogen i tenanten
- Mappen 'Scripts': Inneholder scripts som brukes av installasjonsskriptet. Inneholder også et eget oppgraderingsskript som kjøres on-demand.
- Mappen 'SharePointPnPPowerShellOnline': PnP PowerShell filene som brukes for å kommunisere med SharePoint Online
- Mappen 'SiteScripts': Inneholder konfigurasjon for Prosjektområdemal (site scripts og site designs)
- Mappen 'Templates': Inneholder en pakke med konfigurasjon for porteføljeområdet samt en egen pakke for taksonomi
- Filen Install.ps1: PowerShell-skriptet som installerer løsningen
- Filen SearchConfiguration.ps1: Søkeknofigurasjon for Prosjektportalen som lastes automatisk opp til søketjenesten i SharePoint Online
Kjør Install.ps1 med riktige parametere, se eksempler og mer detaljer nedenfor. I hovedsak er forskjellen at oppgradering kjøres med -Upgrade parameteren. Dette sikrer at man unngår endringer på taksonomi, overskriving av standarddata, duplikater og andre problemer som kan oppstå dersom installasjonen kjøres flere ganger.
Oppgrader Prosjektportalen 365 til /sites/prosjektportalen og bruker weblogin for å autentisere (i tilfelle MFA).
.\Install.ps1 -Url "https://tenant.sharepoint.com/sites/prosjektportalen" -Interactive -Upgrade
Dette skriptet ble introdusert i versjon 1.3.1 for å støtte oppgradering av eksisterende prosjekter. Skriptet gjør følgende
- Henter ut alle siter knyttet til Prosjektportalen-huben
- Spør om brukeren som kjører skriptet skal legges til som admin på alle siter
- Forsøker å oppgradere site for site med endringer (se oversikt i tabell under)
- Spør om brukeren som kjører skriptet skal fjernes som admin fra alle siter
Kjør skriptet Scripts/UpgradeAllSitesToLatest.ps1. Dette kjøres med parameteren PortfolioUrl som er URL til Prosjektportalen-instansen som skal oppgraderes. Skriptet må kjøres med en konto som har SharePoint admin rollen. Skriptet støtter bare å connecte med -Interactive parameteren.
.\UpgradeAllSitesToLatest.ps1 -PortfolioUrl "https://tenant.sharepoint.com/sites/prosjektportalen"
Introdusert | Funksjonalitet | Detaljer |
---|---|---|
1.3.0 | Prosjekttidslinje | Legger til side, app og navigasjonssnarvei til Prosjekttidslinje-siden. |
Prosjektportalen 365 (PP365) er installert, men du har noen utfordringer eller opplever problemer. Dette kan du da gjøre:
- Se om problemet du opplever er beskrevet på denne siden
- Se om problemet er beskrevet blant aktive issues
- Se om problemet er beskrevet blant lukkede issues. Dersom det er tilfellet må du kanskje oppgradere til siste versjon.
- Registrer en ny issue. Inkluder gjerne feilmeldinger og skjermbilder som forklarer problemet.
- Eventuelt send en e-post til prosjektportalen@puzzlepart.com
Se issue #129 for en forklaring på problemet og Manage Site Creation på Technet for hvordan dette konfigureres. Office 365 admin har slått av at alle brukere kan opprette områder, og dette kan være en god ting. Likevel oppstår det et problem når man vil opprette prosjektområder fra Prosjektportalen og ikke har denne muligheten. Når dette er slått av betyr det at Office 365 admins eller SharePoint admins må opprette prosjektområdene manuelt fra SharePoint admin center eller via PowerShell og deretter knytte området til Prosjektportalen-hubområdet.
Det finnes noen alternativer for å tilgjengeligjøre prosjektområdeopprettelse til brukere.
- Alle brukere får tilgang til å lage områder og grupper. Innstillingen nevnt over endres altså tilbake. Dette vil ikke være aktuelt for mange organiasjoner
- Brukerne som skal kunne opprette prosjekter (og andre rom) gis tilgang til dette (IT må gjøre dette administrativt). Se Azure Active Directory cmdlets for configuring group settings. Merk at dette krever Azure AD Premium P1 lisenser for brukere som skal opprette områder.
- Brukere får tilgang til å bestille rom fra en liste, IT oppretter basert på bestillingen. Det opprettes en bestillingsliste på prosjektporteføljeområdet som gir brukere tilgang til å "bestille" prosjektområder. Det settes opp en Flow som sender en e-post til O365/SP administrator med informasjon om bestillingen. O365/SP admin oppretter manuelt området.
- Brukere får tilgang til å bestille rom fra en liste, rommet blir opprettet vha. en automatisert rutine. Det må settes opp en liste og Logic App som oppretter området og legger på hub-tilknytning.
Ta gjerne kontakt med oss på prosjektportalen@puzzlepart.com dersom dere ønsker bistand eller råd knyttet til dette.
Du ser bare prosjektene du selv har tilgang til, enten som medlem eller eier. Av og til kan prosjekter som er slettet fortsatt ligge i listen over Prosjekter. Slett de isåfall derfra også.
[Feilsøking av løsningen etter installasjon]
Det er mulig å gjøre en rekke tilpasninger i Prosjektportalen. Her kommer diverse guider på det som kan konfigureres og skrues på.
Det er mulig å legge til sine egne prosjektegenskaper i tillegg til de som kommer med når man installerer Prosjektportalen 365.
Man legger til en ny prosjektegenskap (ett nytt felt) ved å legge til en områdekolonne på innholdstypen Prosjekt
på porteføljeområdet. Innholdstypen finner du på følgende link: https://{tenant}.sharepoint.com/sites/{prosjektportalen}/_layouts/15/ManageContentType.aspx?ctype=0x0100805E9E4FEAAB4F0EABAB2600D30DB70C
{tenant}
og {url}
avhenger av hvor Prosjektportalen er installert.
For at feltet skal synkroniseres til prosjektene må feltet ligge i gruppen Egendefinerte kolonner for Prosjektportalen. Det er også viktig å passe på at feltnavnet ikke blir for langt grunnet begrensninger i platformen (Microsoft 365).
Kolonnenavnet som brukes når man oppretter feltet i SharePoint blir det vi kaller det interne feltnavnet. Det er viktig at lengden på det interne feltnavnet ikke er over 25 tegn.
Det er derfor anbefalt å gjøre det på følgende måte:
- Opprett feltet med et kortere kolonnenavn uten mellomrom
- Rediger feltet og sett ønsket kolonnenavn for feltet - det interne feltnavnet vil ikke endre seg
Eksempel
Du vil legge til valuta-feltet Støtte fra Difi.
- Opprett feltet med kolonnenavn StotteDifi og gruppe Egendefinerte kolonner for Prosjektportalen
- Rediger feltet og sett kolonnenavn til Støtte fra Difi
- Feltet blir synkronisert til nye prosjekter neste gang du gjør en endring på egenskapene
Med 'Tillatelseskonfigurasjon' åpnes det opp for muligheten til å gi brukere en generell tilgang til alle prosjekter.
Ved opprettelse av et nytt prosjekt vil det bli opprettet en SharePoint gruppe i det nye prosjektet. Gruppens navn, medlemmer og deres rettighet i det nye prosjektet styres ut fra oppsettet som gjøres på 'Porteføljeområdet'
- Tilgangen er sentralt styrt fra Porteføljeområdet og gis til alle prosjekter ved opprettelse.
- Allerede opprettede prosjekter vil måtte oppdateres manuelt.
- Siden dette gjøres kun ved opprettelse av prosjektet vil endringer som gjøres i det enkelte prosjektet etter opprettelsen ikke bli korrigert tilbake til utgangspunktet.
- Ingen endringer på konfigurasjonen vil ha tilbakevirkende kraft på eksisterende prosjekter
Unntaket er der hvor det benyttes AD grupper som medlemmer i den sentrale gruppen. Her vil naturlig nok endringer som gjøres inne i selve AD gruppen slå gjennom til alle prosjekter hvor AD gruppen har blitt lagt til.
(rekkefølgen dette gjøres i er ikke viktig)
- Opprett SharePoint gruppe på Porteføljeområdet
- Legge til et tilhørende element i listen 'Tillatelseskonfigurasjon'
- Legge til brukere i SharePoint gruppen
En ny SharePoint gruppe opprettes fra https://domene.sharepoint.com/sites/sitenavn/_layouts/15/user.aspx
- Velg 'Opprett gruppe'
- Gi gruppen et valgfritt navn (navnet benyttes i neste steg)
- Øvrige valg og innstillinger kan la stå som default
Et nytt element legges til i listen 'Tillatelseskonfigurasjon' som nås fra konfigurasjonssiden på https://domene.sharepoint.com/sites/sitenavn/SitePages/Konfigurasjon.aspx (Eller denne direkte lenken: https://domene.sharepoint.com/sites/sitenavn/Lists/Tillatelseskonfigurasjon/AllItems.aspx)
- Inne i listen 'Tillatelseskonfigurasjon' velger du '+Ny'
Det nye elementet fylles ut med:
- 'SharePoint gruppenavn'; som skal være det samme som ble benyttet i forrige steg
Navnet benyttes som navn på et nytt SharePoint gruppenavn i det enkelte nye prosjektet. Og som referanse til den sentrale gruppen hvor medlemmer hentes fra og legges til i den nye gruppen i prosjektet.
- 'Rettighetsnivå'; benyttes for å velge rettighetsnivå på den nye gruppen som da blir opprettet i prosjektet
Ergo det er ingen sammenheng mellom et eventuelt rettighetsnivå på den sentrale gruppen som det refereres til og den nye gruppen i prosjektet.
I den nyopprettede SharePoint gruppen må det legges til medlemmer. Det er disse medlemmene som også blir lagt til i prosjektene ved oppstart. Det finnes 2 typer 'medlemmer' som kan legges til:
- Navngitte enkelt medlemmer
- AD grupper
For å kunne administrere medlemskap over tid vil vi for dette formålet anbefale å benytte AD grupper.
- Klikk på gruppen du opprettet i steg 1 slik at du kommer inn i denne
- Velg 'Ny' -> 'Legg til medlemmer i gruppen'
- Søk deg frem til ønsket AD gruppe (eller enkelt medlem) og velg denne. (Om ønskelig kan flere grupper og/ eller medlemmer velges)
- Velg 'Del'