株式会社イルミネート・ジャパン 株式会社イルミネート・ジャパン

  • トレーニング
    • コース スケジュール
    • 受講要項/お支払い方法について
    • 研修会場へのアクセス
    • オンラインコース ご受講ガイド
  • 研修 コース一覧
    • Power Platform
    • SharePoint
    • Microsoft 365
    • コース検索
  • コンサルティング・技術サポート
  • コンテンツ開発
  • 会社概要
    • ニュース
    • 技術者一覧
    • 書籍一覧
    • アクセス
  • ブログ
  • お問い合わせ
    • よくあるご質問
  • ホーム »
  • ブログ »
  • Microsoft 365 »
  • ゲストユーザーの最終サインイン日時取得 – Graph PowerShell SDK 利用

Microsoft 365

ゲストユーザーの最終サインイン日時取得 – Graph PowerShell SDK 利用

  • 2023.05.25

前回 [Graph PowerShell SDK を利用して Teams のチーム作成を制限する] にて、Azure AD PowerShell のコマンドを Microsoft Graph PowerShell SDK に置き換えた内容をご紹介しましたが、今回も同様に Graph PowerShell の内容です。

最近アクセスしていないゲストユーザーを把握し、ゲストユーザーの棚卸しにつなげられるよう、ゲストユーザーの最終サインイン日時を取得する方法をご紹介します。これは MSOnline や AAD PowerShell ではできなかった操作ですね。

  1. Microsoft Graph へ接続
  2. ゲストユーザーの最終サインイン日時の取得

Microsoft Graph へ接続

  1. Microsoft Graph に接続します。このとき情報の取得に必要なアクセス権を指定します。
    【今回の作業に必要な権限】
    • ユーザーの読み取りと書き込み
    • 監査ログの読み取り
    Connect-MgGraph -Scopes "User.ReadWrite.All", "AuditLog.Read.All"
  2. 管理者アカウントとパスワードを入力し Microsoft 365 にサインインしてください。
    サインイン後、要求されているアクセス許可画面が表示された場合、[承諾] をクリックします。

    「組織の代理として同意する」 にはチェックを入れないでください。チェックを入れると、組織のすべてのユーザーに同じアクセス許可が永続的に割り当てられます。

ゲストユーザーの最終サインイン日時の取得

今回はゲストユーザーの以下の情報を取得してみます。

  • ユーザープリンシパル名 (UserPrincipalName)
  • 表示名 (DisplayName)
  • 最終サインイン日時(LastSignIn DateTime)
  • ゲストユーザーの登録日時 (CreatedDateTime)
    • 最終サインイン日時、作成日時は UTC です。+ 9時間すると日本時間になります。
    • ゲストユーザーが 2020 年 4 月以前や一度もサインインしていない場合は、LastSignIn DateTime の値は空白になります。

すべてのゲストユーザーを表示

Get-MgUser -Property UserPrincipalName, DisplayName, SignInActivity, 
CreatedDateTime, UserType | Where-Object {$_.UserType -match "Guest"} 
| select UserPrincipalName, DisplayName, 
@{Name = "LastSignIn DateTime" ; Expression  = 
{$_.SignInActivity.LastSignInDateTime}}, CreatedDateTime

すべてのゲストユーザーをローカルに csv ファイルとしてエクスポート

   ※ ファイルパスは適宜変更してください。

Get-MgUser -Property UserPrincipalName, DisplayName, SignInActivity, 
CreatedDateTime, UserType | Where-Object {$_.UserType -match "Guest"}
 | select UserPrincipalName, DisplayName, 
@{Name = "LastSignIn DateTime" ; Expression  = 
{$_.SignInActivity.LastSignInDateTime}}, CreatedDateTime | 
Export-CSV -Path C:\Work\GuestUser_All.csv -Encoding Default

最終サインイン日時が指定した日付以前のゲスト ユーザーをcsvファイルとしてエクスポート

Get-MgUser -Property UserPrincipalName, DisplayName, SignInActivity, 
CreatedDateTime, UserType | Where-Object {($_.UserType -match "Guest")
 -and ($_.SignInActivity.LastSignInDateTime -le "2023-05-01T00:00:00Z")}
  | select UserPrincipalName, DisplayName, @{Name = "LastSignIn DateTime" ; 
Expression  = {$_.SignInActivity.LastSignInDateTime}}, CreatedDateTime | 
Export-CSV -Path C:\Work\GuestUser_20230501.csv -Encoding Default

作業完了後、Microsoft Graph との接続を切断します。

Disconnect-MgGraph

 

以上、今回も Microsoft 365 の運用管理を効率化するためにかかせない Microsoft Graph PowerShell から私が実際によく利用している内容のご紹介でした。Microsoft 365 の管理者は Microsoft Graph PowerShell を利用する機会が増えていくと思いますので、今後も運用管理に役に立つ Microsoft Graph PowerShell をご紹介したいと思います。

Microsoft 365 運用 関連コース

  • CI505-H Microsoft 365 運用管理

    Microsoft 365 の運用管理に必要な知識と設定すべき項目を理解いただけます。アカウントやデバイス管理に不可欠な Entra ID の基礎知識をはじめ、Exchange Online、Microsoft Teams、SharePoint Online、OneDrive for Business など各サービスにおいて実施すべき設定と推奨設定、理解しておきたい仕組みなど、運用管理に必要な内容を基本から実務レベルまで解説。

  • CI509-H Microsoft 365 デバイス運用管理

    Microsoft Defender、Microsoft Purview、Microsoft Entra ID を活用したセキュリティおよびコンプライアンス対策に加え、注目を集める Microsoft 365 Copilot の運用管理など、Microsoft 365 全体の情報保護に関する機能・利用シーン・運用のポイントを具体的に解説。

  • CI506-H Microsoft 365 運用管理 – 情報保護編

    Microsoft Defender、Microsoft Purview、Microsoft Entra ID を活用したセキュリティおよびコンプライアンス対策に加え、注目を集める Microsoft 365 Copilot の運用管理など、Microsoft 365 全体の情報保護に関する機能・利用シーン・運用のポイントを具体的に解説。

  • CI508-H Microsoft 365 PowerShell による管理効率化

    Microsoft 365 に対する運用管理で PowerShell を利用するための基本や Exchange Online、SharePoint Online、Microsoft Teams を設定するための便利なコマンドライン、設定を自動化するためのスクリプトの作成方法など、PowerShell による Microsoft 365 管理の基本から必須スキルまでを、運用管理に活用できるサンプルを用いて解説。

Microsoft 365 管理 Graph PowerShell Teams

  • Graph PowerShell SDK を利用して Teams のチーム作成を制限する
  • SharePoint Framework 1 つの PC で複数バージョンの開発環境を利用する

最新記事

  • マネージドID で完全自動化!Azure Automation × Graph API で SharePoint レポートを定期取得する

  • デバイスコードフローから マネージドID へ!Azure Automation で Graph API を動かすための環境構築

  • デバイスコードフロー × Graph API でクイック取得!管理センターでは出せない SharePoint サイト URL 付きレポートの出力

  • 「できるPower BI データ集計・分析・可視化ノウハウが身に付く本 改訂版」発売

  • M365 Copilot Chat の履歴を一括削除

カテゴリ一覧

  • Power Apps
  • Power Automate
  • Power BI
  • Copilot Studio
  • SharePoint
  • SharePoint Framework
  • Teams
  • Dataverse for Teams
  • Microsoft 365
  • アナウンス
  • 未分類

お問い合わせ

イルミネート・ジャパンが提供するトレーニングやサービスに関するご相談など、
お気軽にご連絡ください。

担当者に相談する
    • ホーム »
    • ブログ »
    • Microsoft 365 »
    • ゲストユーザーの最終サインイン日時取得 – Graph PowerShell SDK 利用
  • トレーニング
  • コンサルティング・技術サポート
  • コンテンツ開発
  • 会社概要
  • ブログ
  • 個人情報保護方針
  • 個人情報の取り扱いについて
  • 情報セキュリティ基本方針
  • お問い合わせ
  • よくあるご質問

株式会社イルミネート・ジャパン

〒105-0001
東京都港区虎ノ門 3-18-16 虎ノ門菅井ビル 3F
TEL : 03-5777-9977
Mail : training@illuminate-j.jp

  • 会社概要
  • プライバシーポリシー
  • サイトマップ
Copyright ©2026 Illuminate Japan Inc. All Rights Reserved.

イルミネート 研修サポートデスク