Handleiding › Aan de slag › Installeren
Microsoft 365: klik hier en voer daarna deze stappen uit
Waarom dit onderdeel
Je agenten lezen je mail en werken in je bestanden op OneDrive en SharePoint. In Microsoft 365 gaat dat via een app-registratie: een technische identiteit in jouw Microsoft-omgeving, met precies de rechten die je agenten nodig hebben, en niet meer. Die maakt iemand met de rol Globale beheerder aan.
- Ben je zelf de beheerder van je Microsoft-omgeving? Doe dan de stappen hieronder. Een van ons zit naast je.
- Beheert iemand anders je Microsoft-omgeving? Dan doe je zelf niets aan dit onderdeel. Stuur je beheerder de mail onderaan deze pagina: hij doet alle stappen, met deze pagina als handleiding. Een beheerder is er om dit soort werk voor je te doen, en hij kent zijn eigen omgeving.
Wat je nodig hebt: een account met de rol Globale beheerder (Global Administrator), het Microsoft Entra-beheercentrum, en PowerShell op je computer met de module van Exchange Online (stap 2).
Hoe lang: ongeveer een halfuur.
Microsoft noemt de menu's in het Engels. Staat je beheercentrum in het Nederlands, dan heten ze anders, maar ze staan op dezelfde plek.
Stap 1. Registreer de app
Klik hier: entra.microsoft.com → Entra ID → App registrations → New registration.
- Name:
AI-agents <bedrijf>. - Supported account types: Single tenant only (in oudere schermen: Accounts in this organizational directory only).
- Redirect URI: leeg laten. Klik Register. Wat je ziet: de pagina Overview van de nieuwe app, met bovenaan de Application (client) ID en de Directory (tenant) ID.
- Ga in dezelfde app naar API permissions → Add a permission → Microsoft Graph → Application permissions → Files.ReadWrite.All → Add permissions, en klik daarna op Grant admin consent for (je organisatie). De gedelegeerde User.Read die er standaard bij staat, gebruikt de app niet; die mag weg. ⚠️ Zet hier geen Mail-recht bij. Een Mail-recht in Entra geldt voor alle postvakken tegelijk. Het mailrecht regel je in stap 2, alleen voor jouw postvak.
- Ga naar Entra ID → Enterprise apps → AI-agents
<bedrijf>, en noteer op de pagina Overview de Object ID. Die heb je in stap 2 nodig; het is een andere dan de Object ID onder App registrations.
Stap 2. Mail: alleen jouw postvak
Dit gaat in PowerShell, met de module van Exchange Online. Heb je die module nog niet, installeer hem dan eenmalig:
Install-Module ExchangeOnlineManagement -Scope CurrentUser
Vervang in de eerste twee regels hieronder de tekst tussen de aanhalingstekens door de Application ID en de Object ID uit stap 1.5, en zet in de vijfde regel je eigen mailadres. Plak de regels daarna één voor één.
$appId = "HIER-DE-APPLICATION-ID"
$objectId = "HIER-DE-OBJECT-ID"
Connect-ExchangeOnline
New-ServicePrincipal -AppId $appId -ObjectId $objectId -DisplayName "AI-agents <bedrijf>"
New-ManagementScope -Name "AI-agents <bedrijf>" -RecipientRestrictionFilter "PrimarySmtpAddress -eq '<jouw mailadres>'"
New-ManagementRoleAssignment -App $objectId -Role "Application Mail.Read" -CustomResourceScope "AI-agents <bedrijf>"
New-ManagementRoleAssignment -App $objectId -Role "Application Mail.ReadWrite" -CustomResourceScope "AI-agents <bedrijf>"
Test-ServicePrincipalAuthorization -Identity $objectId -Resource <jouw mailadres>
Wat je ziet: bij de laatste regel staat bij beide rollen InScope op True. Dat ziet de test meteen; in gebruik kan het tot twee uur duren voordat het recht werkt.
Waarom twee rollen: Mail.Read is apart nodig om bij nieuwe mail een melding van Microsoft te krijgen, en Mail.ReadWrite om concepten in je postvak klaar te zetten. Versturen kan de app niet.
Stap 3. Maak de sleutel van de app
De app logt in met een client secret. Een certificaat kan hier niet, omdat het programma waarmee je agenten bij je bestanden komen zonder aangemelde gebruiker alleen met een client secret kan inloggen.
Klik hier: Entra-beheercentrum → App registrations → AI-agents <bedrijf> → Certificates & secrets → Client secrets → New client secret.
- Kies de langste geldigheid die je beleid toestaat (hoogstens 24 maanden), en klik Add.
- Microsoft toont de waarde maar één keer. Kopieer de Value (niet de Secret ID).
Stap 4. Zet alles in onze 1Password
Ga naar onze 1Password, kluis <klantnaam>, nieuw item, type Secure Note, naam precies Microsoft App. Maak voor elk gegeven een eigen tekstveld, en geef dat precies deze naam:
tenantmet de Directory (tenant) ID uit stap 1;client_idmet de Application (client) ID uit stap 1;client_secretmet de client secret uit stap 3;object_idmet de Object ID uit stap 1.5;vervaldatummet de datum waarop de client secret verloopt.
Aan de eerste drie namen herkent de koppeling met je mail de gegevens, dus noem ze niet anders.
Deze waarde: nu meteen in onze 1Password, item Microsoft App. Daarna het venster dicht.
Waarom de vervaldatum: een client secret verloopt na hoogstens 24 maanden, en dan vallen je mailagenten stil. Wij zetten die datum in je systeem als taak, zodat hij op tijd vernieuwd wordt.
Klaar met dit onderdeel
Door naar onderdeel 4, GitHub. De sleutel van onderdeel 3b, Gemini, maken wij voor je.
Wat er bij de installatie gebeurt. Daar hoef je niet bij te zijn: wat wij voor je mail en je bestanden nodig hebben, staat dan in onze 1Password.
Als iemand anders je Microsoft-omgeving beheert: de mail
Wij vullen de plaatshouders met je in. Stuur hem vanaf je eigen adres, met ons in de cc, zodat je beheerder ons allebei kan antwoorden.
Onderwerp: toegang voor de AI-agenten van
<bedrijf>: een app-registratie in Microsoft 365Beste
<naam>,Ik laat door Canoniek AI-agenten installeren die in mijn mail en mijn bestanden werken. Ze draaien dag en nacht op een Mac, zonder dat er een Microsoft-gebruiker is aangemeld, en hebben daarom een eigen app-registratie in onze omgeving nodig. Dat kan alleen een Globale beheerder. Zou je dat willen doen?
Alle stappen staan hier, met de reden erbij: https://canoniek.ai/documentatie/aan-de-slag/installeren/microsoft/
Kort wat het wordt: een app-registratie met Files.ReadWrite.All (bestanden op OneDrive en SharePoint), en het mailrecht via RBAC for Applications in Exchange Online, beperkt tot alleen mijn postvak. Versturen kan de app niet.
Wat we van je terug nodig hebben:
- De Directory (tenant) ID, de Application (client) ID en de Object ID. Die zijn niet geheim; je kunt ze in je antwoord op deze mail zetten.
- De client secret, met de vervaldatum. Die is wél geheim: stuur hem niet per mail, maar via een eenmalige deellink uit je wachtwoordbeheer, aan Canoniek.
Staat jullie beleid geen client secrets toe, laat het dan weten; dan zoeken we voor de bestanden een andere route. Vragen kun je aan mij stellen, of aan Canoniek in de cc.
Groet,
<Voornaam>
Wat je beheerder terugstuurt, zetten wij in onze 1Password. Jij hoeft daarna niets meer te doen.