Having that Exchange Online functions are not yet included in MS Graph, and Exchange does not have its own SDK also, the only option I found to automate some functions in Exchange Online is ExchangeOnlineManagement PowerShell.
I used it for a while but Microsoft recently ceased the Basic Authentication. I'm using the Basic Authentication because it does not require any prior package installation.
The modern authentication use Connect-ExchangeOnline and requires the ExchangeOnlineManagement to be installed prior to any call. It's easy to install it on a physical server or a VM, but I'm relying on Azure services, like azure Web app, azure Function app, where I cannot install a package. now the situation is:
- Basic authentication stopped working, and it's not an option anymore. This was the only option to execute exchange PowerShell commands from azure web app or function app.
- In modern authentication, you rely on the ExchangeOnlineManagement that must be installed prior to any call. since I work on web app, or function app, I cannot install it.
- there is no .net Exchange SDK.
- MS Graph lack Exchange functions.
So what is the valid solution to execute Exchange command? Maybe the solution is available but I'm not aware of it.
My case is simple: Every night, Upon the expiration of an Azure user account:
- I change some user properties on Azure (Available through MS Graph)
- I need to set an auto reply message, so sender can know the email account is no longer monitored. (NOT AVAILABLE)