ヤマムギ

growing hard days.

*

Google Apps ScriptでAdmin SDK Directory Serviceを使ってユーザの最終ログイン情報一覧を出力する

      2015/07/20


GoogleAppsで使わなくなったアカウントを確認する方法として、最終ログイン時間を調べる方法があるかと思います。
もちろん、IMAPでメール、CalDAVでカレンダーとかで使っているケースではこれでは確認出来ないのですが。
まあ、調査対象を明確にする事は出来るかと思います。
でも、ユーザ一覧でソートする事も出来ず、ある程度規模が多くなれば1件づつ見ていくわけにも行かないので、Google Apps SctiptでSpreadSheetに出力してしまいます。

まずはGoogle Apps ScriptでAdmin SDK Directory Serviceを使ってグループメンバー情報を出力するを参考にしていただいて、Admin SDK Directory Serviceを有効にしてください。

ユーザの最終ログイン情報を出力する方法

下のコードをSpreadSheetの[ツール]-[スクリプトエディタ]に書いて、実行したら、とりあえずSpreadSheetに今の状態が書き出せます。
ドメインとかメールアドレスとかは編集して自己責任で参考にしてください。

詳細は公式のAdmin SDK Directory Serviceのページを確認してください。

簡単に説明します。

「page = AdminDirectory.Users.list~」で指定ドメインのユーザのリストをpage変数に代入します。

で、「page.users」をループでまわして、
「var user = users[i]」でグループメンバーを代入します。

  • user.primaryEmail – メールアドレス
  • user.name.fullName – 表示名(日本後環境だと日本語名)
  • user.lastLoginTime – 最終ログイン時間

[js]
function listAllUsers() {

var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

var pageToken, page;
do {
page = AdminDirectory.Users.list({
domain: ‘xxxxxx.xx.xx’,
maxResults: 300,
pageToken: pageToken
});
var users = page.users;
if (users) {
for (var i = 0; i < users.length; i++) {
var user = users[i];
sheet.getRange(i+2,1).setValue(user.primaryEmail);
sheet.getRange(i+2,2).setValue(user.name.fullName);
sheet.getRange(i+2,3).setValue(user.lastLoginTime);
}
} else {
Logger.log(‘No users found.’);
}
pageToken = page.nextPageToken;
} while (pageToken);
}
[/js]

Admin_SDK_Directory_Service_-_Google_Apps_Script_—_Google_Developers


最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

 - Google, GoogleAppsScript, Web ,

ad

ad

  関連記事

スパムリファラーサイトのアクセスをAnalyticsで除外する(2017/8/17現在)

アクセス数とかそんなに気にしないのですが。 嘘です。 リファラーサイトからのアク …

Twilio APIでOpenWeatherMap APIで取得した天気情報を毎朝モーニングコールする

OpenWeatherMap APIのJsonから取得した気温と天気の情報を、T …

ブログの記事が掲載されました(レバテック様)

少し前の話になりますが、登壇する側も聞く側も良い刺激を受けられる!勉強会のレポー …

Googleカレンダーの予定をPHPからXMLで取得してWebページに表示する(現在廃止されたAPIなので使えません)

ご注意 ※下記の記事で使用していたAPIは2016年現在使用出来なくなっています …

ホームページ、自作サイトにアメブロの新着情報を掲載する

MagipieRSSを使用 なので下記サイトでダウンロード http://mag …

ライブ配信のカレンダーをGoogle Apps Scriptとかで作りました

ライブ配信がまとまっているカレンダー欲しいなあと思いまして。 まとめようと思いま …

Googleナレッジパネルの認証を受けるために申請してみた

Googleでエゴサーチしていると、ナレッジパネルなるものがあることに気づきまし …

Redmine 3.0.0 のメールサーバーでGoogleApps SMTPサーバーを利用する

Redmineのメール通知サーバーとしてGoogleAppsを使用する方法です。 …

Mac OS X Yosemite にnode.js + mongodb 環境を作る

node.jsインストール nodejs.orgサイトで「INSTALL」ボタン …

自転車でナビ+記録出来るアプリ+ホルダー+バッテリー試してみた

目的 記録を蓄積して振り返りやる気を継続する 飽きないように単調にならないように …