Skip to content

Permissions

Nemu-x edited this page Jul 15, 2026 · 3 revisions

Permissions

SwissKnife only does what your app registration is allowed to do. Grant Application permissions for app-only mode (and Grant admin consent), or the matching Delegated permissions for device-code mode. Add only what you use β€” the app can hide tabs you have no access to (Settings β†’ Check access β†’ Hide unavailable).

Core (start here)

Enough for the dashboard, users, groups, teams, files, and audit:

  • Organization.Read.All β€” org info on connect
  • User.Read.All
  • Directory.Read.All
  • Group.ReadWrite.All
  • Team.ReadWrite.All
  • Files.ReadWrite.All
  • Sites.ReadWrite.All
  • AuditLog.Read.All

Full matrix (per feature)

Feature Microsoft Graph permission(s)
Connect / Dashboard Organization.Read.All, Directory.Read.All
Users β€” read / snapshot User.Read.All
Users β€” block, reset password, revoke sessions, create/update/delete, manager, usageLocation User.ReadWrite.All, Directory.ReadWrite.All
Deleted users β€” list / restore User.DeleteRestore.All (or Directory.ReadWrite.All)
Reset MFA / auth methods UserAuthenticationMethod.ReadWrite.All
Admin roles β€” list / assign / remove RoleManagement.ReadWrite.Directory
Licensing β€” SKUs, assign/remove Directory.Read.All, User.ReadWrite.All
Groups β€” read, create, membership Group.ReadWrite.All, Directory.Read.All
Teamify (group β†’ team) Team.Create, Group.ReadWrite.All
Teams & channels β€” read/manage Team.ReadWrite.All, Channel.Create, ChannelMember.ReadWrite.All, TeamMember.ReadWrite.All
Chats β€” list, messages, members Chat.Read.All, Chat.ReadWrite.All, ChatMember.ReadWrite.All
Mail β€” read / send as user Mail.Read, Mail.Send
Calendar β€” read / create events Calendars.ReadWrite
OneDrive / SharePoint β€” browse, up/download, delete, links, Offboarding, Cleanup Files.ReadWrite.All, Sites.ReadWrite.All
Intune β€” devices, wipe/retire/lock DeviceManagementManagedDevices.Read.All, DeviceManagementManagedDevices.PrivilegedOperations.All
Entra devices β€” enable/disable/delete Device.Read.All, Directory.ReadWrite.All
BitLocker recovery keys BitlockerKey.Read.All
App registrations β€” list + expiry Application.Read.All
Usage reports (CSV) Reports.Read.All
Service health / message center ServiceHealth.Read.All
Audit β€” sign-in / directory logs AuditLog.Read.All
Playbooks (onboard/offboard) union of the permissions for the steps you enable
Bulk / CSV runner union of the permissions for the chosen operation (create users / licensing / groups)
Temporary Access Pass (TAP) UserAuthenticationMethod.ReadWrite.All
Guest invitations (B2B) User.Invite.All (or Directory.ReadWrite.All)
App secret rotation Application.ReadWrite.All
Security review β€” CA policies + app consents Policy.Read.All, Application.Read.All
Offboarding extras β€” auto-reply (OOF), mail forwarding rule, hide from GAL, calendar share, remove from all groups MailboxSettings.ReadWrite, Mail.ReadWrite, User.ReadWrite.All, Calendars.ReadWrite, GroupMember.ReadWrite.All (covered by Group.ReadWrite.All if you already grant it)
Raw Graph playground whatever the request you send requires

Notes

  • Application vs Delegated: app-only acts tenant-wide as the app; delegated (device code) acts as the signed-in user and is bounded by their own rights. Pick per your needs β€” see Connecting.
  • Sign-in logs (AuditLog.Read.All) also require Entra ID P1/P2 on the tenant.
  • After adding Application permissions you must click Grant admin consent β€” otherwise every call returns 403 (SwissKnife shows a hint telling you a permission is missing).

Clone this wiki locally