Exchange Online PowerShell Module - Publish to PowerShell Gallery as an actual function
Please publish the Exchange Online PowerShell Module used for MFA to the PowerShell Gallery (www.powershellgallery.com) to allow for easier installation.
The clickOnce installer is a bit of a non-standard installation for most people used to working with standard PowerShell modules.
Try this out. I'm working on some more improvements like fixing the implicit remoting handler and changing it to use MSAL from ADAL.
Find-Module Microsoft.Exchange.Management.ExoPowershellModule | Install-Module
Part of the problem with having an actual module is that the exchange team is full of a bunch of idiots who wrote their own powershell endpoint instead of an actual module, and you never know what cmdlets will be exposed in the remote session until you create it. So you basically have to create a new module every time you connect the session. This lunacy has also spread to skype for business online and sharepoint online.
Kresten Ovesen commented
This needs more votes, it baffles me that this is still a problem 2,5 years later.
Chris Smith commented
I wish I could use all my votes on this, ClickOnce is ridiculous (also, doesn't work in Edge Chromium the upcoming replacement to Edge anyway). Please make it a standard module. I don't know why all of these one-off powershell modules or session connections are necessary instead of just 'install-module' - that's what the gallery is for. Very frustrating.
Paul Morrison commented
Why is this not a standard PS Module like everything else? Please add this as a standard PS module
Rick Kane commented
Please look at allowing this module to be installed just like any other PS module
Note that this module is now available in Azure Cloud Shell by running Connect-ExoPSSession
Rob Clive commented
Have to agree with the others on this thread. This module is currently pretty much useless
Dan M commented
ClickOnce has to go away. Many enterprises block this. The installer also fails when the user does not have access to write to the their desktop, which many enterprises also restrict access to.
Please make this like many of the other modern Microsoft PowerShell deployments. Make it just like the Azure AD one from a deployment perspective
We cannot even use it if we wanted to, because the whole thing is blocked by SRP and Applocker from running because the installer is UNSIGNED and downloaded to the USER PROFILE..... Why ... just .... wow....
It's astounding to me that microsoft has built such a great platform for managing packages but yet, for one of their most important powershell modules, they deviate from everything else they do and use this stupid clickonce scheme for distributing it. Plenty of other modules suppport MFA and 'modern' features without this stupid hoop to jump for. Microsoft, please fix, this is unacceptable/
I could not agree more, I would like to see it in the PowerShell Gallery, but at the very least, the Microsoft.Exchange.Management.ExoPowershellModule module should install to one of the standard module paths to make it as accessible in a regular session as any other PowerShell module.
I was able to copy it to one of the standard install paths for modules, and get it working as a regular module, but it's really mindbogglingly irritating that a PowerShell module created by Microsoft doesn't bother to adhere to good design practices for PowerShell modules.
My other solution, which is stupid that I even have to bother with it, is that I've added a function to one of my existing modules that literally just exists to find and import this module from the totally random install path that whoever created this decided to install it to. I don't need a separate custom shell for Exchange Online, I just want a module that I can import into a regular session without jumping through hoops. This was a really poor design decision.
Dan M commented
MSFT needs to get consistent with all of the PowerShell modules for their cloud services. Look at the AzureAD module. This should be the standard in how it is delivered and how you connect. Be consistent in delivery and verb usage. The Exchange Online click-once is the worst. Skype for Business Online is the runner up.
Yes, there's no reason for this to be such a time-sucking outlier: make it normal.
thank you for the complete lack of integration with anything else
Cam Murray commented
I understand why we do this (to enable easy updating), but if this is published in to nuget - then we can just use the in-built package management in windows 10 to keep it updated.
Eddie McCabe commented
Agree this would help with usability, without compromising security. Please implement!
Stefan Flegg commented
Yes please - the ClickOnce version makes it so much harder to use in ISE, etc. I just want to install the module like all the others and use it as normal.