User manual
Every feature of EasySwitch365 explained step by step – from the first customer session to the PowerShell commands that sign in right inside the customer tab. Last updated: June 2026 · Version 0.3.
1. What EasySwitch365 is
EasySwitch365 is the command center for Microsoft 365 for MSPs and IT administrators. Every customer (tenant) gets a fully separated browser session. You manage several customers in parallel, without constantly signing out and back in, and without sign-ins, cookies or tokens ever mixing.
The app has three areas:
- Customer list (left) – each entry is its own isolated session.
- Workspace (center) – the embedded browser with the Microsoft 365 portals and quick links.
- Tools – the knowledge base with ready-made commands and the built-in PowerShell console that signs in directly within the customer session.
2. System requirements
| Platform | Requirement |
|---|---|
| Windows | Windows 10/11 (64-bit). PowerShell 7 is recommended for the PowerShell commands (installable from inside the app via winget at the click of a button). Windows PowerShell 5.1 is available as a fallback. |
| macOS | macOS 11+ (Apple Silicon, M1/M2/M3 …). PowerShell 7 is required for the PowerShell commands (installable from inside the app via Homebrew at the click of a button). Note: Apple Silicon only for now, no Intel build. |
PowerShell is not needed for plain tenant management in the browser – only for the console commands.
3. Installation & activating your license
- Download the package (the link arrives with your purchase email) and install it (Windows: unzip and start
EasySwitch365.exe· macOS: unzip and dragEasySwitch365.appto “Applications”). - On first launch you are asked for your license key – enter it and click Activate.
- The license is activated for this device and then re-checked online at launch and regularly while you work. A brief offline period is bridged; if the connection is down for longer, the device is released, or the subscription is cancelled, the app locks. You can see the status anytime in the license menu (the “License” button at the bottom left).
- Double-click
EasySwitch365.apponce and close the message with “Done” (not “Move to Trash”). - Open System Settings → Privacy & Security.
- Scroll down to “EasySwitch365 was blocked” and click “Open Anyway”, then confirm with your password/Touch ID.
4. Adding & managing customers
Use “+ Add customer” (bottom left) to create a new isolated session. The dialog offers:
| Field | Meaning |
|---|---|
| Display name | The customer’s name in the list (e.g. “Contoso GmbH”). |
| Start page | Which portal loads when opening – Admin Center, Entra, Exchange, etc. |
| Custom URL | Optionally a different start URL (e.g. a customer SharePoint). |
| Logo / letter | Upload your own logo or use a coloured letter as a marker. |
You edit an entry via the pencil icon; there you can also remove the logo or delete the customer. When you delete, the associated isolated session is removed from the device too.
5. The workspace
Quick links (top toolbar)
One click takes you straight into the respective portal within the active customer session – no re-authentication:
| Button | Opens | What for |
|---|---|---|
| Admin | admin.microsoft.com | Microsoft 365 Admin Center – users, licenses, billing. |
| Entra | entra.microsoft.com | Entra ID (Azure AD) – identities, groups, Conditional Access. |
| Exchange | admin.exchange.microsoft.com | Exchange Admin Center – mailboxes, mail flow. |
| Defender | security.microsoft.com | Microsoft Defender / Security Center. |
| Intune | intune.microsoft.com | Device management & endpoint management. |
| Azure | portal.azure.com | Azure portal for cloud resources. |
Tabs, address bar & navigation
Within a customer session you can open several tabs. The back/forward arrows and the reload icon work just like in a browser. If a portal opens a new window (e.g. “open in new tab”), it stays signed in within the same customer session.
Reset
The Reset button reloads the current customer session and signs it out (clears that customer’s cookies/tokens) – useful when a sign-in is “stuck”. Other customers are unaffected.
6. Session isolation – how it works
Each customer runs in its own session partition. Cookies, sign-in tokens and cached data of one customer are technically separated from all others – like separate browser profiles, only automatic.
- Session data is stored locally and encrypted on your device (macOS Keychain / Windows DPAPI).
- There is no password vault and no cloud collection of credentials. Sign-in always happens directly between your device and Microsoft.
- So you can be signed in as Global Admin for customer A and as a different admin for customer B at the same time – without conflicts.
7. The knowledge base
Via “Knowledge” (toolbar) you open a collection of ready-made PowerShell commands for the most common admin tasks – grouped by topic and searchable.
Placeholders are filled in automatically
The commands contain the placeholder {tenant}. It is automatically replaced with the active customer’s domain. Values in angle brackets – e.g. <user@domain> – you still have to replace with real addresses.
Use a command: insert or copy
Each card has two actions:
- Insert into console – places the finished command (with the customer domain filled in) directly into the input line of the built-in console. You only adjust the
<…>values and press Enter. - Copy – puts the same command on the clipboard, in case you want to paste it elsewhere.
Save your own commands
Via the + in the knowledge base you create your own entries (topic, title, description, command). These are saved and appear alongside the bundled commands. You can use {tenant} in your own commands too.
Bundled categories
Exchange connection · Mailbox info · Permissions (Full Access, Send As, Send on Behalf) · Sent items into the shared mailbox · Create/convert shared mailbox · Forwarding & out-of-office · Message trace · Entra/identity via Microsoft Graph (reset password, disable account, user info) · Teams & Security/Compliance · Setup (install modules).
8. The built-in console
Via “Console” you open a PowerShell console at the bottom that belongs to the active customer session. It shows at the top which shell is running (“PowerShell 7” or “Windows PowerShell”).
Adjust the height
At the top edge of the console there is a drag handle. Use it to make the console larger or smaller – the browser area adjusts automatically. The height is remembered. (Same on Mac and Windows.)
The buttons
| Button | Function |
|---|---|
| ⚙ Set up | Installs the required PowerShell modules once (Exchange Online, Microsoft Graph, Teams) for the current user. On Windows the execution policy is set appropriately first. |
| ⚡ Connect Exchange | Signs in to Exchange Online – via device code directly in the customer tab (see below). |
| ⚡ Graph | Connects to Microsoft Graph (Connect-MgGraph -UseDeviceCode). |
| ⚡ Teams | Connects to Microsoft Teams (Connect-MicrosoftTeams -UseDeviceAuthentication). |
| Clear | Clears the console output. |
| Restart | Restarts the shell (e.g. after PowerShell 7 was just installed – the console then runs as PowerShell 7). |
Input & history
Type commands into the input line and confirm with Enter. Use ↑ / ↓ to scroll through previously entered commands.
Device code directly in the customer tab
This is the key feature: for the connect commands EasySwitch365 automatically adds the device-code switch and opens the Microsoft confirmation page in the active customer’s tab, with the code on the clipboard. This way the sign-in is tied to the right customer session – no external browser and no account mix-up.
Connect-MgGraph and Connect-MicrosoftTeams also work with Windows PowerShell 5.1.9. Microsoft services & when to connect to which
| Service | Command | What for day to day |
|---|---|---|
| Exchange Online | Connect-ExchangeOnline | Mailboxes, permissions (Full Access, Send As), shared mailboxes, mail flow, forwarding, message trace. The most common use case. |
| Microsoft Graph | Connect-MgGraph | Create/disable users, passwords, assign licenses, groups, sign-in/audit logs, Conditional Access, Intune. Central and future-proof. |
| Microsoft Teams | Connect-MicrosoftTeams | Teams policies, telephony, meeting and room settings. |
| Security & Compliance | Connect-IPPSSession | Content searches (eDiscovery), retention, DLP. Same module as Exchange. |
MSOnline and AzureAD are being retired by Microsoft – their tasks are taken over by Microsoft Graph. That is why EasySwitch365 relies on Graph.10. How sign-in works under the hood (API)
Microsoft 365 management runs in the background over Microsoft’s official REST APIs – above all the Microsoft Graph API. The PowerShell modules (Microsoft.Graph, ExchangeOnlineManagement, MicrosoftTeams) are convenient “wrappers” around these APIs: a cmdlet such as Update-MgUser sends a Graph API call in the background.
The device code flow
- You click a connect command. PowerShell requests a short device code from Microsoft.
- EasySwitch365 opens the confirmation page
microsoft.com/deviceloginin the active customer’s tab and puts the code on the clipboard. - You confirm there with the right admin account. Because this happens in the customer tab, the sign-in is tied to that customer session.
- Microsoft issues PowerShell a time-limited access token. All following commands use this token until you run
Disconnect-…or it expires.
Why this detour? A PowerShell token and a browser cookie are technically different. The device code is the official bridge so the console uses exactly the identity that matches the visible customer session – rather than some account signed in anywhere on the system.
11. Language & appearance
At the bottom left you choose the language (German, English, Spanish, French, Turkish, Arabic) and toggle between light and dark mode. Your choice is remembered.
12. Security & privacy
- Local processing: all customer data and sessions stay on your device and are encrypted by the operating system.
- No cloud collection: EasySwitch365 stores no Microsoft credentials and transmits no work data to us.
- Only outbound connection: the daily license check (key + anonymous device fingerprint only).
- Signature-verified license (Ed25519), device-bound; encrypted transport (TLS) everywhere.
More about this in the privacy policy.
13. Troubleshooting
“PowerShell 7 missing” / console runs as “Windows PowerShell”
A bar appears at the top of the console with “Install PowerShell 7”. On Windows this installs via winget, on Mac via Homebrew – right in the console. Then click Restart; a full app restart is not needed.
“Connect Exchange” reports a window-handle error
Occurs only in Windows PowerShell 5.1. Fix: install PowerShell 7 (button at the top) and click Restart – the sign-in then runs cleanly in the customer tab.
SmartScreen (Windows) or Gatekeeper (macOS) blocks the launch
Windows: The app is EV-signed and starts without a warning; in rare cases “More info” → “Run anyway”. macOS (version 15 and newer): not yet notarized – double-click the app → “Done” → System Settings → Privacy & Security → “Open Anyway” (see section 3). On older macOS: right-click → “Open”. Apple notarization later removes the macOS step too.
A command says “… is not recognized”
The matching module is not installed yet – just click ⚙ Set up once.
Release your license & move to a new device
The license is tied to one device. When switching, you release your old device yourself – this also works if it’s no longer available (you only need access to your inbox):
- Open easyswitch365.com/geraet-umziehen and enter your purchase email.
- You’ll receive a confirmation link at exactly that address – click “Release device” inside it.
- Your old device is removed and the license seat is freed.
- Install EasySwitch365 on the new device and activate with your license key.
Still have questions? Write to us at [email protected].
EasySwitch365