Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Tässä dokumentissa kuvataan lyhyesti MPASSid palvelun käyttöönottaminen AzureAD integraatiota hyödyntäen. Ennakkovaatimuksena integraatiolle on että MPASSid tietomallin mukaiset tiedot ovat luettavissa käyttäjähakemistosta. Lisätietoja tietosisällöllisistä vaatimuksista löytyy täältäI detta dokument beskrivs kortfattat ibruktagandet av MPASSid-tjänsten med hjälp av AzureAD-integrationen. Ett förhandskrav för integrationen är att uppgifterna enligt MPASSid-datamodellen kan läsas i användarindexet. Mer information om datainnehållskraven finns här: https://wiki.eduuni.fi/x/8rMID

Konfiguration av AzureAD

...

1.

...

Gå till Microsoft Azure-portalen och välj ”App registrations” och ”New registration”

Image Added

Image Added


Fälten för applikationens namn och URI på registreringssidan i Azure-portalen är markeradeImage Added

Image Removed

Image Removed

Image Removed

https://mpass-proxy.csc.fi/Shibboleth.sso/SAML2/POST

...

1. Lägg till URI under ”Add an Application ID

...

URI”:

...

Image RemovedKnappen Application ID URI på registreringssidan i Azure-portalen är markeradImage AddedImage Removed

Knappen Set på registreringssidan är markeradImage Added

Klikkaa Klicka på Set :

Image Removed

Application ID URI -kenttään tulee automaattisesti och ange: "api://<guid> arvo. Ota se talteen ja paina " värden. Klicka Save

3.

...

Ge erforderliga behörigheter till Azure AD

...

. Välj ”API Permissions” i menyn till vänster och därefter ”Add a permission”.

Välj Microsoft Graph

Microsoft Graph kan väljas i menyn Select an APIImage Added

Valitse Microsoft Graph

Image Removed

Delegated permissions

    • Directory / Directory.AccessAsUser.All (Access directory as the signed in user)
    • Directory / Directory.Read.All (Read directory data)
    • Oletuksena pitäisi olla joAntaget värdet skulle vara: User.Read (Sign in and read user profile)

...

    • Directory / Directory.Read.All (Read directory data)

Hyväksy muutokset painamalla: "Grant Godkänn ändringarna genom att klicka på: ”Grant admin consent for ...".

4. MPASSid

...

Valitse vasemmalta "Certificates & secrets"

Image Removed

Luo uusi client secret.

Anna avaimelle nimi ja valitse haluamasi avaimen voimassaoloaika. Valitse Add ja muista kopioida avain tässä kohtaa talteen, koska et enää pääse näkemään sitä suljettuasi sivun.   

Huom: Ota avaimen voimassaoloaika talteen, koska MPASSid:n kirjautumiset lakkaavat toimimasta mikäli avainta ei uusita Azure AD:n ja MPASSid:n päässä ennen sen vanhenemista. Uusi client secret tulee toimittaa viimeistään viikkoa ennen vanhan vanhenemista MPASSid:n tukeen.

...

-tillämpningen behöver ett lösenord för integrationen med AzureAD

Välj ”Certificates & secrets” till vänster

Knappen New client secret i vyn Client secrets är markeradImage Added

Skapa en ny client secret.

Ge nyckeln ett namn och välj önskad giltighetstid för nyckeln. Välj Add och kom ihåg att kopiera nyckeln här eftersom du inte längre kan se den när du stänger sidan.

Obs! Anteckna nyckelns giltighetstid, eftersom inloggningarna i MPASSid slutar fungera om nyckeln inte förnyas hos Azure AD och MPASSid innan den går ut. En ny client secret måste lämnas till MPASSid senast en vecka innan den gamla går ut.

5.  MPASSid-teamet behöver följande information för att slutföra installationen

  • Application (client) ID

  • Directory (tenant) ID 

  • Client secret (

    avain) ja avaimen voimassaolon päättymisajankohta
  • Application ID URI (api://<guid>)
  • nyckel) och datumet när nyckelns giltighetstid upphör

  • Uppgift om i vilka attribut i Azure AD de användaruppgifter som ska förmedlas till MPASSid finns (se Testning av integrationen

    Tiedon mistä Azure AD:n attribuuteista MPASSid:lle välitettävät käyttäjätiedot löytyvät (Kts. Integraation testaaminen

    ).

6. Kontroll av namnen på attributen i Azure AD

...

Azure AD:ssa attribuuttien tekniset nimet saattavat poiketa graafisen käyttöliittymän nimistä. MPASSid hakee tiedot Microsoft Graph API:n kautta. Sitä kautta noudettaessa tulee tietää attribuuttien tekniset nimet ja attribuuttien kirjainkoonkin tulee olla oikein I Azure AD kan attributens tekniska namn avvika från namnen i det grafiska användargränssnittet. MPASSid hämtar uppgifterna via Microsoft Graph API. När uppgifterna hämtas på detta sätt, måste man känna till attributens tekniska namn och även gemener och versaler ska användas rätt i attributen (surname vs Surname).

Alla olevan powershell funktion avulla voi varmistaa attribuuttien kirjoitusasun hakemalla esimerkiksi jonkin Azure AD:ssa olevan testitunnuksen tiedot. Onkin suositeltavaa testata ensin sen avulla attribuuttien oikea kirjoitusasu.

Med hjälp av PowerShell-funktionen nedan kan du kontrollera attributens skrivsätt genom att till exempel hämta uppgifterna för någon av testkoderna i Azure AD. Vi rekommenderar att man först testar attributens skrivsätt på detta sätt.

Funktionen klipps och klistras i PowerShell-fönstret och hämtas därefter med kommandot getAccountAttributes i samma fönsterFunktio copy-pastetaan powershell ikkunaan ja sen jälkeen sitä kutsutaan getAccountAttributes -komennolla samassa ikkunassa.


function getAccountAttributes {
    param (
        [Parameter()]
        [string] $clientID,
        [Parameter()]
        [string] $clientSecret,
        [Parameter()]
        [string] $tenantID,
        [Parameter()]
        [string] $userPrincipalName,
        [Parameter()]
        [string] $optionalAttributes
    )
 
 
    $ReqTokenBody = @{
        Grant_Type    = "client_credentials"
        Scope         = "https://graph.microsoft.com/.default"
        client_Id     = $clientID
        Client_Secret = $clientSecret
    }
     
    $TokenResponse = Invoke-RestMethod -Uri "https://login.microsoftonline.com/$TenantID/oauth2/v2.0/token" -Method POST -Body $ReqTokenBody
 
    if ( !$optionalAttributes )
    {
        $apiUrl = "https://graph.microsoft.com/v1.0/users/" + $userPrincipalName
    } else {
        $apiUrl = "https://graph.microsoft.com/v1.0/users/" + $userPrincipalName + "?`$select=displayName,givenName,surname,userPrincipalName,id,$optionalAttributes "
    }
 
    $Data = Invoke-RestMethod -Headers @{Authorization = "Bearer $($Tokenresponse.access_token)"} -Uri $apiUrl -Method Get
 
    return ( $data )
}
 


Code Block
# Exempel på Esimerkkianvändning funktionav käytöstäfunktionen. 
# IlmanUtan parametern -optionalAttributes parametriahämtar komentokommandot hakeebasuppgifterna käyttäjäobjektinför perustiedotanvändarobjektet (näyttönimivisningsnamn, etunimiförnamn, sukunimiefternamn jaoch UPN).
# Voit lisätä Du kan lägga till fler attributnamn i parametern -optionalAttributes; parametriindessa lisääska attribuuttiensepareras nimiämed pilkulla eroteltuinakommatecken.
# Vaihda x, y, ja z arvoiksi yllä luomasi App registration:n ja Azure AD tenantin tiedot.

Ange uppgifterna för App registration och Azure AD tenant som du skapade ovan som värden x, y, och z.

 getAccountAttributes -clientID "xxxxxxxxxxxxxxxxxxxxxxx" -clientSecret "yyyyyyyyyyyyyyyyy" -tenantID "zzzzzzzzzzzzzzzzzzzz" -userPrincipalName "<haettavatunnus@domain.onmicrosoft.com>" -optionalAttributes "city,companyName,Department,department,faxNumber,jobTitle,officeLocation,onpremisesextensionattributes,postalCode,state,streetAddress"

...