Microsoft 365を利用している場合に、再認証が発生するタイミングを知りたい
Microsoft 365とフェデレーションする環境で、再認証が行われるタイミングは以下のとおりです。
【参考】
この情報は2026年09月14日現在のものです。Microsoft社の仕様変更により、変更される場合があります。
再認証が行われるタイミングは、以下の2つの要因で決定します。
- Microsoft 365 サービスのセッション、またはAzure ADが発行するトークンの失効
- IIJ IDサービスのセッションの失効
上記の2つが両方とも満たされる場合に、ユーザにて再認証が発生します。
Microsoft 365サービスのセッション、またはAzure ADが発行するトークンの失効
Microsoft 365 サービスのセッション、またはAzure ADのトークンが失効すると、IIJ IDサービスへの認証要求が発生します。
Microsoft 365 サービスのセッションについては、「Microsoft 365 のセッションタイムアウト」及び「Microsoft 365 のアイドル セッション タイムアウト」をご覧ください。
Azure ADのトークン有効期限については、「Microsoft ID プラットフォームでの構成可能なトークンの有効期間」をご覧ください。
再認証の頻度を下げる
IIJ IDサービスからMicrosoft 365(Azure AD)にユーザをプロビジョニングしている場合、発行されるリフレッシュトークン及びセッションCookieの最長有効期間は12時間です。
以下の手順を実施することで、再認証の頻度を下げることができます。
【注意】
- 反映されるまで、数分程度かかる場合があります。
- 新規に作成、またはプロビジョニングされたユーザは属性が未設定のため、あらためて実行する必要があります。
- 手順では、対象ユーザの既存のリフレッシュトークンとセッションCookieをすべて失効させます。そのため、実行直後に対象ユーザは、すべてのデバイス及びアプリケーションでサインインし直す必要があります。利用者に影響がない時間帯に実行してください。
事前準備
- Windows PowerShellをセットアップします。セットアップ方法について詳しくは、「Windows PowerShellをセットアップする」をご覧ください。
以下のコマンドを実行します。
Connect-MgGraph -Scopes "User.Read.All","User.RevokeSessions.All"
【参考】
実行時に以下の画面が表示された場合は、「組織の代理として同意する」をチェックせずに「承諾」をクリックしてください。

ユーザを個別に設定する
【参考】
各コマンドの「<対象ユーザのUPN>」の部分は、利用しているユーザのUPNに置き換えて実行してください。
以下のコマンドを実行し、対象ユーザの「SignInSessionsValidFromDateTime」の値を確認します。
Get-MgUser -UserId "<対象ユーザのUPN>" -Property Id,UserPrincipalName,SignInSessionsValidFromDateTime | Select-Object UserPrincipalName, SignInSessionsValidFromDateTime
値が空欄で表示される場合、リフレッシュトークンの有効期間が12時間に制限されています。
以下のコマンドを実行し、SignInSessionsValidFromDateTime の値を更新します。
Revoke-MgUserSignInSession -UserId "<対象ユーザのUPN>"
以下のコマンドを実行し、SignInSessionsValidFromDateTime の値が更新されていることを確認します。
Get-MgUser -UserId "<対象ユーザのUPN>" -Property Id,UserPrincipalName,SignInSessionsValidFromDateTime | Select-Object UserPrincipalName, SignInSessionsValidFromDateTime
以下のコマンドを実行し、Microsoft 365からサインアウトします。
Disconnect-MgGraph
複数ユーザを一括で設定する
【参考】
各コマンドの「<お客様ドメイン>」の部分は、利用しているAzure AD側のドメイン名に置き換えて実行してください。
以下のコマンドを実行し、「SignInSessionsValidFromDateTime」が未設定のユーザを取得します。
Get-MgUser -All -Property Id,UserPrincipalName,SignInSessionsValidFromDateTime | where{ $_.SignInSessionsValidFromDateTime -eq $null } | where{ $_.UserPrincipalName -like ( "*@<お客様ドメイン>" ) }すでに設定済みのユーザは対象になりません。
以下のコマンドを実行し、SignInSessionsValidFromDateTime の値を更新します。
Get-MgUser -All -Property Id,UserPrincipalName,SignInSessionsValidFromDateTime | where { $_.SignInSessionsValidFromDateTime -eq $null -and $_.UserPrincipalName -like '*@<お客様ドメイン>' } | foreach { Revoke-MgUserSignInSession -UserId $_.Id }以下のコマンドを実行し、SignInSessionsValidFromDateTime の値が更新されていることを確認します。
Get-MgUser -All -Property Id,UserPrincipalName,SignInSessionsValidFromDateTime | where{ $_.UserPrincipalName -like ( "*@<お客様ドメイン>" ) } | Select-Object UserPrincipalName, SignInSessionsValidFromDateTime以下のコマンドを実行し、Microsoft 365からサインアウトします。
Disconnect-MgGraph
IIJ IDサービスのセッションの失効
IIJ IDサービスがAzure ADから認証要求を受け取ったあと、IIJ IDサービスのセッションが失効している場合は再認証が発生します。
IIJ IDサービスのセッションの有効期限はID管理者が変更することができ、デフォルトは3時間です。設定方法については、「IIJ IDサービス オンラインマニュアル[管理者用]」の「 セッションの有効期限の変更 」をご覧ください。
なお、ブラウザやアプリケーションがIIJ IDサービスにセッションを送信しなかった場合も、再認証が発生します。
【参考】
- セッション情報はCookieとして保存されているため、ブラウザのCookieを削除することで強制的に認証させることもできます。
- Windows版のMicrosoft 365アプリではCookieが保持されないため、Azure ADのトークンが失効すると毎回再認証が必要となります。IIJ IDサービスのセッション有効期限には影響しません。