「Offece365のOutlook上でメール下書き保存を作成する」という内容をRPA化しております。
下記【▼課題&原因】があり【▼とりあえずの回避策】までは対応できたのですが、
【▼さらなる課題】が発生したため、Office365のログアウト方法または、
他の良い方法があればご教授ください。
▼現行の実行ファイル
UiPathGo!より、「Microsoft Office 365」をダウンロードした上で下記のように実装しています。(https://go.uipath.com/component/microsoft-office-365-669054)
①「Microsoft Office 365 スコープ」アクティビティの中に、
②「メールを下書き保存」アクティビティを配置。
①では、下記を指定しております。
・サービス = メール
・認証の種類 = Interactive Token ←弊社環境ではこれのみ可能
・テナント
・アプリケーションID
▼課題&原因
端末にAさんでログインした状態で、
ロボット実行にて誤ってBさんにてメール下書き保存処理を実行した場合、
ロボット実行にて再度Aさんにてメール下書き保存処理を実行してもBさんのメールボックスに
下書きが作成されてしまう。
※Aさんのメールボックスに下書き保存が作成されるのが正しい動き。
上記原因は、Office365のログアウト処理ができていない為(90日間後にログアウトされる)。
⇒参考URL Azure AD が発行するトークンの有効期間について | Microsoft Learn
(WindowsとOffice365のログインユーザーが一致するような運用に徹底すれば問題ないのですが、
現行のユーザー業務だと難しい状況です。)
▼とりあえずの回避策
ロボット処理の冒頭で、下記ファイルを削除するロジックを追加しました。
⇒ C:\Users\(個人ID)\AppData\Local\DataStore.Office365 直下のbinファイル削除
▼さらなる課題
上記のように、binファイルを削除する運用だと、
Office365のバージョンアップ等で削除対象のファイル配置場所が変わってしまった場合に
不具合が起きてしまう可能性があります。
できれば、Office365のログアウト処理を明示的に実施したいのですが、
該当するのアクティビティが見つかりません。
Office365のログアウト処理を明示的に実施する方法はありますでしょうか?