Dear Reader;
yesterday (October 12, 2022) all attempts to login/connect to MS Exchange server with TIdIMAP4 failed because MS has dropped support for IMAP4.
What options do I have for my old projects written with VCL2009 and Indy10? TIA. Boba.
(10-13-2022, 04:54 PM)Boba TC Wrote: [ -> ]yesterday (October 12, 2022) all attempts to login/connect to MS Exchange server with TIdIMAP4 failed because MS has dropped support for IMAP4.
They did not drop support for IMAP itself. They simply dropped support for
BASIC authentication (username+password), which affects several protocols including IMAP:
Deprecation of Basic authentication in Exchange Online
(10-13-2022, 04:54 PM)Boba TC Wrote: [ -> ]What options do I have for my old projects written with VCL2009 and Indy10?
You need to use OAuth2 authentication now:
Authenticate an IMAP, POP or SMTP connection using OAuth
There is currently a
sasl-oauth branch in Indy's GitHub repo (it hasn't been merged in the main code yet) which adds new OAuth-based SASL components, such as
TIdSASLXOAuth2, which can be used in the
TIdIMAP4.SASLMechanisms collection. Indy does not implement the OAuth protocol itself to obtain the necessary access token, but you can follow Microsoft's documentation to obtain the token yourself over HTTP, and then you can assign the token to
TIdSASLXOAuth2 so it can be used with IMAP authentication.
thank you, Remi. those who know that oauth is *not* more secure than basic are switching from ms as provider.
i'll wait to see when all of my clients finish this transfer. meanwhile i'm gonna spend some time playing w/sasl mechs.
your ideas are always very much helpful and appreciated.
B