Windowsフォームアプリケーションを使用して、O365メールボックスからメールを読み取ろうとしています。ユーザー名とパスワードを使用して、アプリケーションでO365メールボックスからメールを読み取る必要があります。 Azureにアプリケーションを登録せずにO365 APIにアクセスできますか? (ユーザー資格情報のみを使用)
私はこの記事をmsdnでフォローしました https://msdn.Microsoft.com/en-us/library/office/dn567668(v = exchg.150).aspx この行に問題があります:
result = context.AcquireToken(resourceId, ClientID, _returnUri); // parameters are no longer valid in this method
はい、 Exchange WebサービスAPI で実行できます。クライアントアプリケーション用に設計されています。リンクをたどると、多くの例を見つけることができます。
注:サービスクライアントを作成するには、Exchange Serverのバージョンを指定する必要があります。それはExchangeVersion.Exchange2013_SP1
オンライン交換用。
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013_SP1);
これがGoogleの検索ランキングでかなり上位に表示されるかなり人気のある質問であることを考えると、廃止される前にExchange Webサービスを使用できるのは(執筆時点で)残り12か月しかないことはおそらく注目に値します。
これらのサービスに接続するための推奨される方法は、OAuthを使用することです。
Q:この変更を行うと、アプリケーションが機能しなくなりますか?
A:はい、それはアプリ自体とそれがどのようにコーディングされたかに依存します。 EWSを使用していて、基本認証を使用している場合、はい、2020年10月13日には接続に失敗します。ただし、アプリがModern Auth/OAuthを使用している場合は、いいえ、以前と同じように機能し続けます。
Office 365のExchange Webサービス(EWS)APIの今後の変更
Matt for Office 365メールサービスで上記の方法を現在使用している人には、これが適用されます。オンプレミスの交換サービスを使用している人は影響を受けません。