azureblog.co.uk
← cd ~/compare
// compare · graph permissions

Agreement.Read.All vs Agreement.ReadWrite.All

Two Microsoft Graph permissions that are easy to mix up, side by side.

In short: Agreement.Read.All only reads. Agreement.ReadWrite.All can also create, change or delete. Use the read-only one unless your app needs to write.

Permission typeAgreement.Read.AllAgreement.ReadWrite.All
ApplicationRead all terms of use agreements
Allows the app to read terms of use agreements, without a signed in user.
Always needs admin consent · Medium risk
Read and write all terms of use agreements
Allows the app to read and write terms of use agreements, without a signed in user.
Always needs admin consent · High risk
DelegatedRead all terms of use agreements
Allows the app to read terms of use agreements on behalf of the signed-in user.
Needs admin consent · Low risk
Read and write all terms of use agreements
Allows the app to read and write terms of use agreements on behalf of the signed-in user.
Needs admin consent · High risk

Spotted something out of date or wrong? Tell us and we'll fix it.