Microsoft Azure konfiguration for Miralix Teams Presence (Dansk)

Forord

Denne vejledning er for teknikere som skal installere Miralix Teams Presence. Teknikeren bør have uddannelse som IT Supporter, eller have tilsvarende kvalifikationer. Derudover have relevant kendskab til Microsoft Teams, Microsoft SQL Server, Microsoft Entra ID, Microsoft Office 365, samt Windows PowerShell.

Miralix Teams Presence understøtter multiple Teams miljøer.

Miralix Teams Presence indsamler status visning fra Microsoft Teams, så Miralix klienter kan vise Microsoft Teams status på interne kontaktpersoner. Miralix Teams Presence servicens indstillinger, konfigureres med Miralix Wrench under fanen ”Microsoft Teams Presence”, se evt. brugervejledningen for Miralix Wrench.

Miralix Teams Presence kan sætte ”In a Call” ind på Miralix brugeres Teams status, når enten brugerens mobil- eller arbejdstelefon er optaget. se evt. brugervejledningen for Miralix Wrench.

GDPR- Persondataforordningen

General Data Protection Regulation (GDPR), eller persondataforordningen som det typisk kaldes i Danmark, gør at kunder der får installeret Miralix software, skal tage stilling til omfanget og varighed af datalagring. Alle Miralix kunder tilbydes en databehandler aftale, idet at Miralix som udgangspunkt ikke har forpligtelser vedrørende denne datalagring.


Forudsætninger for Miralix Teams Presence

For at Miralix Teams Presence Service kan fungere er der nogle forudsætninger som skal være på plads.

Microsoft Entra ID

Der skal være oprettet en domænebruger (Service bruger) til Miralix Teams Presence: eks. ”Miralix TeamsPresence User”

Denne bruger/user skal minimum være medlem af ”Domain Users”

Dette er nødvendigt for at Miralix Teams Presence kan gøre brug af ”Device Code Flow” loginmetoden mod Microsoft Azure. I ”Device Code Flow” loginmetoden bruges der en ”Domain user” til at autorisere Miralix Teams Presence service mod Azure Tenant

Obs! Slettes denne domænebruger stopper Miralix Teams Presence med at kunne hente data. Udløber denne domænebrugers kodeord stopper Miralix Teams Presence med at kunne hente data.

Obs! 2/Multifaktor skal deaktiveres for denne bruger.

Microsoft Office 365 / Microsoft Azure

Domænebrugeren ”Miralix TeamsPresence User”, skal være oprettet på Microsoft Office 365/Microsoft Entra ID. Domænebrugeren behøver ikke at have tildelt nogle licenser i Microsoft Office 365/Microsoft Entra ID.

Oprettelse af App registrering via Azure portal

Før der kan oprettes og bruges Azure App på tenant, til brug af Miralix Teams Presence, er der nogle indstillinger, der skal laves.

Obs! Dette kræver administratorrettigheder.

Oprettelse af Azure App adgang

Log ind på Azure Portal »  Se figur 1

att_21_for_28475406.png

Figur 1

App Registration til Miralix Teams Presence i Azure portal

  1. Log ind på Azure Portal » med administrator konto (Se guiden Register a new application using the Azure portal »). Se Figur 2. Husk at vælge korrekt tenant (Hvor Miralix Teams Presence skal have adgang), hvis administrator kontoen har adgang til flere Microsoft Entra ID tenants. Dette gøres ved at vælge den korrekte konto øverst til højre.

att_22_for_28475406.png

Figur 2


  1. Klik på "Microsoft Entra ID" og derefter på "App registrations". Se figur 3. Hvis "Microsoft Entra ID" ikke vises, klikkes der på ”More services”

att_17_for_28475406.png

Figur 3

  1. For at Miralix Teams Presence kan logge ind og hente Microsoft Teams status, skal der registers en ny applikation. Klik på "New registration", indtast et navn og vælg supporterede konto typer som kan bruges. I eksemplet i figur 4 er følgende valgt: Name- "Miralix Teams Presence"

Supported account types- "Accounts in this organizational directory only (MRXLAB only - Single tenant)”

image-20230615-124542.png

Figur 4

  1. Klik på “register”

Konfiguration til Miralix Teams Presence i Azure Portal

Efter Miralix Teams Presence er blevet registeret under Azure Portal, skal der ændres på hvordan Miralix Teams Presence kan logge ind og her skal "Treat application as a public client" aktiveres. Grunden til dette er at Miralix Teams Presence logger ind i Microsoft Graph API via Device Code flow, hvor det ikke er muligt at vise bruger af Miralix Teams Presence en login-browser fra Microsoft. For yderligere information omkring Device code flow, klik på linket: Device code flow »

Obs! Vær opmærksom på at hvis der benyttes Conditional Access policy ifm. Azure/Tenant, så kan det være nødvendigt med yderligere rettigheder eller whitelisting, før der kan logges ind via Device code flow.

Klik på ”Authentication”

  1. Klik på ”Yes” ved ”Allow Public client flows” (tidligere ”Treat application as a public client”) ved Advanced settings nederst på siden, se figur 5

att_2_for_28475406.png

Figur 5

  1. Klik på ”+ Add a platform”

  2. Klik på “Mobile and desktop applications”, se figur 6

att_5_for_28475406.png

Figur 6


Marker feltet “https://login.microsoftonline.com/common/oauth2/nativeclient”, se figur

att_6_for_28475406.png

Figur 7


  1. Klik på “Configure”.

  2. Klik på “Save” øverst

Tildeling af rettigheder til Miralix Teams Presence (App registration)

Der skal tildeles rettigheder til Miralix Teams Presence, for at der kan hentes Microsoft Teams status ud. De rettigheder der skal gives er:

  • Presence.Read.All - Read presence information of all users in your organization

  • User.Read - Sign in and read user profile

  • User.ReadBasic.All - Read all users' basic profiles


  1. Klik på ”API permissions”.

  2. Klik på ”Add a permission” og vælg "Microsoft Graph", se figur 8.

att_18_for_28475406.png

Figur 8


  1. Vælg "Delegated permissions" og søg efter de rettigheder som der er brug for og markér dem, se også figur 9 og 10:

  • Presence.Read.All

  • User.Read

  • User.ReadBasic.All

att_12_for_28475406.png

Figur 9

att_13_for_28475406.png

Figur 10


Obs! rettigheden ”Presence.Read.All” kræver "Grant admin consent for ...", før rettigheden bliver tildelt.

Se figur 11.

  1. klik på ”Grant admin consent for …”

  2. klik herefter på ”yes”

att_3_for_28475406.png

Figur 11


Herefter skrives der "Successfully granted admin consent for the requested permissions". Se figur 12.

att_14_for_28475406.png

Figur 12


Begræns bruger adgang til App registreringen

For at begænse bruger adgangen til hvilke brugere der kan godkende Miralix Teams Presence i ”Device code flow” login, kan dette tildeles kun til brugeren eks: ”Miralix TeamsPresence User”

  1. Via administrator konto på https://aad.portal.azure.com/ naviger til ”” ”Enterprise applications | All applications” Se figur 13.

att_7_for_28475406.png

figur 13

  1. Vælg ”All applications” i ”applications type” drop down menuen, og søg den oprettede App registrerint til Miralix Teams Presence frem

  2. Klik på ”Users and groups”

  3. Klik på ”Add user/group”

  4. Klik på ”None Selected” under ”Users” og vælg Domæne brugeren til Miralix Teams presence. eks. ”Miralix TeamsPresence User” og klik på ”Select” og ”Assign”

  5. Under ”Manage” -> ”Properties” skal der aktiveres ”Assignment required” og klik på ”Save” Se figur 14.

att_19_for_28475406.png

Figur 14


Hent client og tenant ID

Client og tenant ID skal bruges til konfigurationen af Miralix Teams Presence i Miralix Wrench. Derfor er det en god ide at gemme disse i et dokument, indtil installationen er gennemført.

  1. Klik på ”Overview”

  2. Kopier ”Application (client) ID” og ”Directory (tenant) ID” og sæt dem ind i et dokument. Se figur 15.

image-20221229-071940.png

Figur 15

Oprettelse af App registrering via Powershell

”Grant admin concent” skal gives via Azure Portalen. Se evt. 3.1.4 punkt 1

Powershell kommandoer

Obs! Alle kommandoer er en hel linje uden linjeskift.

  1. Installer modulet

  • Install-Module -Name AzureAD

  1. Forbind til Azure, og indtast loginoplysninger i popup login vinduet

  • Connect-AzureAD

  1. Lav variable til Microsoft Graph’s AppId

  • $graphRole = Get-AzureADServicePrincipal -filter "DisplayName eq 'Microsoft Graph'"

  1. Lav variabler til App registrerings nødvendige rettigheder (kun til at hente status)

  • $graphRole = Get-AzureADServicePrincipal -filter "DisplayName eq 'Microsoft Graph'"

  • $req = New-Object -TypeName "Microsoft.Open.AzureAD.Model.RequiredResourceAccess"

  • $acc1 = New-Object -TypeName "Microsoft.Open.AzureAD.Model.ResourceAccess" -ArgumentList "b340eb25-3456-403f-be2f-af7a0d370277", "Scope"

  • $acc2 = New-Object -TypeName "Microsoft.Open.AzureAD.Model.ResourceAccess" -ArgumentList "e1fe6dd8-ba31-4d61-89e7-88639da4683d", "Scope"

  • $acc3 = New-Object -TypeName "Microsoft.Open.AzureAD.Model.ResourceAccess" -ArgumentList "9c7a330d-35b3-4aa1-963d-cb2b9f927841", "Scope"

  • $req.ResourceAccess = $acc1,$acc2,$acc3

  • $req.ResourceAppId = $graphRole.AppId

  1. Lav variabel der opretter Azure applikationen

Ændre DisplayName til “Miralix Teams Presence”

  1. Opret Azure App og udskriv AppId

  • Write-Output "Application ID: $($app.AppId)"

  1. Udskriv Tenant ID

  • Write-Output "Tenant ID: $(Get-AzureADTenantDetail | Select -ExpandProperty ObjectId)"


Sæt ”In a Call” Teams status baseret på mobil og arbejdstelefon optaget status

Hvis der modtages mobil eller arbejdstelefon status på Miralix brugere, kan der sættes en ”In a Call” status på Miralix brugerens Microsoft Teams konto, når Miralix brugerens mobil eller arbejdstelefon er optaget. For at kunne bruge denne funktion skal der tilføjes en API tilladelse på appregistreringen, og oprettes en klient secret på appregistreringen i Azure.

Det kan aktiveres for kun mobil status, kun arbejdsttelefon status eller begge. Se evt. brugervejledningen for Miralix Wrench.

Konfigurering af App registrerings tilladelser i azure

Der skal tildeles yderligere rettigheder til Miralix Teams Presence, for at der kan sættes status for Teams brugere. Den rettighed der skal gives er:

  • Presence.ReadWrite.All - Read and write presence information for all users

  1. Klik på ”API permissions”.

  2. Klik på ”Add a permission” og vælg "Microsoft Graph", se figur 16.

att_8_for_28475406.png

Figur 16


  1. Vælg "Application permissions" og søg efter de rettigheder som der er brug for og markér dem, se også figur 16:

  • Presence.ReadWrite.All


Grant admin consent

Obs! rettigheden ” Presence.ReadWrite.All” kræver "Grant admin consent for ...", før rettigheden bliver tildelt. Se figur 17.

  1. klik på ”Grant admin consent for …”

  2. klik herefter på ”yes”

att_15_for_28475406.png

Figur 17


Herefter skrives der "Successfully granted admin consent for the requested permissions". Se figur 18.

att_16_for_28475406.png

Figur 18


Konfigurering af App registrerings klient secrets i azure

For at Miralix Teams presence kan sætte status på Teams brugere skal der oprettes en ”Client secret” til appregistreringen i Azure.

  1. Klik på ”Certificates & secrets” under App registreringen til Miralix Teams presence.

  2. Klik på ”+ New client secret” under Client secrets (0)

  3. Angiv en beskrivelse og vælg hvornår denne secret skal udløbe. Og tryk på ”Add” Se figur 19.

    att_4_for_28475406.png

Figur 19


Gem Værdien og secret ID’et, disse skal bruges til konfigurering i Miralix Wrench Se figur 20.

att_9_for_28475406.png

Figur 20

Fortsæt installation af Miralix Teams presence i Miralix Wrench.


Installation af Miralix Teams presence

Der er nu oprettet de nødvendige forudsætninger for at Miralix Teams Presence kan installeres.

Kontakt venligst Miralix for at få udført installationen.