Azure Active Directory とADALを使用して、Office 365 の Exchange EWS と OAuth でやり取りしています。
私はあなたが使用できることを知ってauthContext.AcquireToken()
おり、すべての oauth を管理します。トークンを保存、使用、更新し、必要に応じてユーザー資格情報を要求します。私の場合の問題は、Azure バックグラウンド Web ジョブで対話が必要なため、ユーザーの資格情報を要求できないことです。
私が試したのは、ユーザーが からの URL にアクセスできるようにする認証コードを取得することでしたGetAuthorizationRequestURL()
。次にAcquireTokenByAuthorizationCode()
、更新トークンを使用してトークンを取得し、データベースに保存します。そのため、バックグラウンド ジョブが EWS に接続する必要がある場合は、AcquireTokenByRefreshToken()
.
このアプローチは機能しますが、14 日後に有効期限が切れたときに新しい更新トークンを取得する方法がわかりません。
バックグラウンド ジョブで ADAL を使用するためのリフレッシュ トークンまたはより良いアプローチを更新するにはどうすればよいでしょうか?
よろしくお願いします!!