Email Audit API を使用してメールのモニタリングを設定するには、管理者が、特定のユーザーの送受信メールのコピーを添付ファイルとして監査者が受信する期間を設定します。1 日あたりのモニターの作成と削除のリクエストの最大数は 1,000 です。この上限はドメイン単位であり、1 日に管理者が行ったすべてのリクエストが含まれます。
メールの監視シナリオには、次の 3 種類のユーザーが含まれます。
管理者 - すべてのドメイン管理者が、Email Audit API のモニター リソースを使用してメールモニターを作成、取得、更新、削除できます。また、管理者は API を使用してメールボックスをダウンロードできます。これらの操作は、管理者が制御しているドメイン内でのみ実行できます。
ソースユーザー - ソースユーザーは、モニタリングの宛先ユーザーによって監査されているメッセージを送受信するユーザーです。すべてのドメイン管理者またはアカウント ユーザーがソースユーザーになれます。移行元ユーザーは、管理者および移行先ユーザーと同じドメインに存在する必要があります。
宛先ユーザー - 宛先ユーザーは、監査対象のメール メッセージを受信する監査者です。
- すべての受信メールと送信メール メッセージ(受信と送信の添付ファイル、転送されたメッセージ、モバイル デバイスから送信されたメール メッセージを含む)のブラインド カーボン コピー(Bcc)を受信します。
- オプションとして、ドメイン管理者は対象ユーザーに対して追加の監査機能を有効にすることができます。オプション機能には、保存されたメールの下書きの監査、ドメイン内外のユーザーとのアーカイブ済みのハングアウト チャットの監査などがあります。
- 宛先ユーザーがメッセージの Bcc コピーを受信しても、転送元ユーザーのアカウントでアクセス可能なメッセージ ヘッダーに Bcc の関連付けは表示されません。
- 監査対象の各メール メッセージは、メール添付ファイルとして移行先ユーザーに送信されます。ドメイン管理者は、これらのメッセージを完全なメール メッセージとして構成することも、メッセージ ヘッダーのみに構成することもできます。
- この宛先ユーザーには、モニタリング対象ドメインの有効なメール アカウントが必要です。これは、管理者と移行元ユーザーに関連付けられているドメインと同じである必要があります。
- 移行先ユーザーは、管理者またはドメイン内のユーザーです。 この宛先ユーザーはロールを切り替えて、別の宛先ユーザーによって監査されるソースユーザーにできます。この宛先ユーザーは、最初の宛先ユーザーに送信されたすべての監査対象メール メッセージのコピーを受信できます。
- ドメイン管理者は、1 つの一意の「宛先ユーザーと移行元ユーザー」のペアに対して監査対象メールモニターを 1 つ作成します。つまり、監査関係は、1 人の宛先ユーザーと 1 人のソースユーザーです。各監査は、API モニタリング リソースを使用して行われます。複数の API モニターを使用することで、宛先ユーザーはドメイン内の多数のユーザーを監査できます。また、複数の API モニターを使用すると、多数の宛先ユーザーが 1 人の監査ユーザーを監査できます。
- 「宛先ユーザーと移行元ユーザー」のペアで API モニターの追加作成や既存の API モニターの更新を行うと、最後に作成されたモニターがこのペアの既存のモニターより優先されます。基本的には、この方法で API モニターを更新します。モニターの更新の詳細については、メールモニターの更新をご覧ください。
メールモニターを作成する
メールモニターを作成するには、メール モニター リソースを指定して次の POST
リクエストを送信します。
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
以下を置き換えます。
DOMAIN_NAME
: Google Workspace のドメイン名(例: example.com)。SOURCE_USERNAME
: モニタリングするユーザー名。
POST
リクエストには、次の Content-type
ヘッダーが含まれます。
Content-type: application/atom+xml
メールモニター リクエストで使用するパラメータの一覧については、リソース: monitor
をご覧ください。
新しいモニターの作成例
この例では、次のパラメータを使用します。
- 監査対象のユーザーは
amal@example.com
です。 - 「
destUserName
」は「izumi
」です。 - 「
beginDate
」は「June 15, 2022, 00:00 hours
」です。 - 「
endDate
」は「June 30, 2022, 23:20 hours
」です。 - 「
incomingEmailMonitorLevel
」は「FULL_MESSAGE
」です。 - 「
outgoingEmailMonitorLevel
」は「HEADER_ONLY
」です。 - 「
draftMonitorLevel
」は「FULL_MESSAGE
」です。 - 「
chatMonitorLevel
」は「FULL_MESSAGE
」です。
プロトコル
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal <atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'> <apps:property name='destUserName' value='izumi'/> <apps:property name='beginDate' value='2022-06-15 00:00'/> <apps:property name='endDate' value='2022-06-30 23:20'/> <apps:property name='incomingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='outgoingEmailMonitorLevel' value='HEADER_ONLY'/> <apps:property name='draftMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='chatMonitorLevel' value='FULL_MESSAGE'/> </atom:entry>
成功すると、サーバーは 201 CREATED
ステータス コードと、新しいモニター設定を示す entry
要素を含む AtomPub エントリを返します。
<entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'> <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/id</id> <updated>2022-04-17T15:02:45.646Z</updated/> <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/id'/> <link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/id'/> <apps:property name='destUserName' value='izumi'/> <apps:property name='beginDate' value='2022-06-15 00:00'/> <apps:property name='endDate' value='2022-06-30 23:20'/> <apps:property name='incomingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='outgoingEmailMonitorLevel' value='HEADER_ONLY'/> <apps:property name='draftMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='chatMonitorLevel' value='FULL_MESSAGE'/> </entry>
Java
import java.util.Calendar; import com.google.gdata.client.appsforyourdomain.audit.AuditService; import com.google.gdata.data.appsforyourdomain.generic.GenericEntry; import com.google.gdata.client.appsforyourdomain.audit.MailMonitor; ... MailMonitor monitor = new MailMonitor(); Calendar beginDate = Calendar.getInstance(); beginDate.set(2022, Calendar.JUNE, 15, 0, 0) monitor.setBeginDate(beginDate.getTime()); Calendar endDate = Calendar.getInstance(); endDate.set(2022, Calendar.JUNE, 30, 23, 20); monitor.setEndDate(endDate.getTime()); monitor.setIncomingEmailMonitorLevel("FULL_MESSAGE"); monitor.setOutgoingEmailMonitorLevel("HEADER_ONLY"); monitor.setDraftMonitorLevel("FULL_MESSAGE"); monitor.setChatMonitorLevel("FULL_MESSAGE"); monitor.setDestUserName("izumi"); AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1"); GenericEntry entry = service.createMailMonitor("amal", monitor);
.NET
using System; using Google.GData.Apps; using Google.GData.Extensions.Apps; ... MailMonitor monitor = new MailMonitor(); monitor.BeginDate = new DateTime(2022, 6, 15); monitor.EndDate = new DateTime(2022, 6, 30, 23, 20, 0); monitor.IncomingEmailMonitorLevel = MonitorLevel.FULL_MESSAGE; monitor.OutgoingEmailMonitorLevel = MonitorLevel.HEADER_ONLY; monitor.DraftMonitorLevel = MonitorLevel.FULL_MESSAGE; monitor.ChatMonitorLevel = MonitorLevel.FULL_MESSAGE; monitor.DestinationUserName = "izumi"; AuditService service = new AuditService("example.com", "example.com-auditapp-v1"); service.setUserCredentials("admin@example.com", "p@55w0rd"); MailMonitor monitorEntry = service.CreateMailMonitor("amal", monitor);
メールモニターを更新する
同じソースユーザーと宛先ユーザーを使用してモニターを更新すると、最初のモニターのプロパティ設定は新しい設定に置き換えられます。
メールモニターで監査構成を更新するには、Authorization
ヘッダーを含む POST
リクエストをモニター フィードの URI に送信します。
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
以下を置き換えます。
DOMAIN_NAME
: Google Workspace のドメイン名(例: example.com)。SOURCE_USERNAME
: 更新するメールモニターのユーザー名。
メールモニターの更新例
この例では、必須プロパティ endDate
とオプションのプロパティ chatMonitorLevel
を更新して、メールモニターの作成例で作成したモニターを更新します。この例では、次のパラメータを使用します。
- 新しい
endDate
はAugust 30, 2022, 23:20 hours
です。 chatMonitorLevel
がHEADER_ONLY
になりました。- 監査対象のユーザーは
amal@example.com
のままです。 destUserName
はizumi
のままです。
更新されなかったモニター プロパティは、デフォルト値に戻ります。たとえば、この例では incomingEmailMonitorLevel
プロパティと outgoingEmailMonitorLevel
プロパティが FULL_MESSAGE
に戻り、draftMonitorLevel
が NONE
に戻ります。
プロトコル
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal <atom:entry xmlns:atom='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'> <apps:property name='destUserName' value='izumi'/> <apps:property name='endDate' value='2022-08-30 23:20'/> <apps:property name='chatMonitorLevel' value='HEADER_ONLY'/> </atom:entry>
成功すると、サーバーは 201 CREATED
ステータス コードと、更新された entry
要素を含む AtomPub エントリを返します。更新されず、レスポンスに表示されるプロパティは、デフォルト値に戻ります。
<entry> <entry xmlns='http://www.w3.org/2005/Atom' xmlns:apps='http://schemas.google.com/apps/2006'> <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi</id> <updated>2022-08-20T00:28:57.319Z</updated> <link rel='self' type='application/atom+xml' href="https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi" /> <link rel='edit' type='application/atom+xml' href="https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi" /> <apps:property name='chatMonitorLevel' value='HEADER_ONLY' /> <apps:property name='destUserName' value='izumi' /> <apps:property name='endDate' value='2022-08-30 23:20' /> </entry>
Java
import java.util.Calendar; import com.google.gdata.client.appsforyourdomain.audit.AuditService; import com.google.gdata.client.appsforyourdomain.audit.MailMonitor; import com.google.gdata.data.appsforyourdomain.generic.GenericEntry; ... MailMonitor monitor = new MailMonitor(); Calendar endDate = Calendar.getInstance(); endDate.set(2022, Calendar.AUGUST, 30, 23, 20); monitor.setEndDate(endDate.getTime()); monitor.setChatMonitorLevel("HEADER_ONLY"); monitor.setDestUserName("izumi"); AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1"); GenericEntry entry = service.createMailMonitor("amal", monitor);
.NET
using System; using Google.GData.Apps; using Google.GData.Extensions.Apps; ... MailMonitor monitor = new MailMonitor(); monitor.EndDate = new DateTime(2022, 8, 30, 23, 20, 0); monitor.ChatMonitorLevel = MonitorLevel.HEADER_ONLY; monitor.DestinationUserName = "izumi"; AuditService service = new AuditService("example.com", "example.com-auditapp-v1"); service.setUserCredentials("admin@example.com", "p@55w0rd"); MailMonitor monitorEntry = service.CreateMailMonitor("amal", monitor);
移行元ユーザーのメール モニターをすべて取得する
ソースユーザーに関連付けられているすべてのモニターを取得するには、Authorization
ヘッダーを含めます。日付には UTC 形式を使用して、モニターのフィード URI に HTTP GET
リクエストを行います。
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
以下を置き換えます。
DOMAIN_NAME
: Google Workspace のドメイン名(例: example.com)。SOURCE_USERNAME
: 取得するメールモニターのユーザー名。
この操作では、リクエストの本文にパラメータがないため、XML の本文は空です。
すべてのメール モニターを取得する例
次の例では、ユーザー amal@example.com
用に作成されたすべてのモニターを取得します。
プロトコル
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal
成功すると、サーバーは 201 CREATED
ステータス コードと、2 人の宛先ユーザー(izumi@example.com,
taylor@example.com
)の設定を示す 2 台のモニターの entry
要素を含む AtomPub フィードを返します。
<feed xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:apps='http://schemas.google.com/apps/2006'> <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal</id> <updated>2010-03-17T15:29:21.064Z</updated> <link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal'/> <link rel='http://schemas.google.com/g/2005#post' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal'/> <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal'/> <openSearch:startIndex>1</openSearch:startIndex> <entry> <id>https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi</id> <updated>2022-04-17T15:29:21.064Z</updated> <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi&'/> <link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/feeds/compliance/audit/mail/monitor/example.com/amal/izumi&'/> <apps:property name='requestId' value='53156'/> <apps:property name='destUserName' value='izumi'/> <apps:property name='beginDate' value='2022-06-15 00:00'/> <apps:property name='endDate' value='2022-06-30 23:20'/> <apps:property name='incomingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='outgoingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='draftMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='chatMonitorLevel' value='FULL_MESSAGE'/> </entry> <entry> <id>>https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/taylor</id> <updated>2022-05-17T15:29:21.064Z</updated> <link rel='self' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/taylor'/> <link rel='edit' type='application/atom+xml' href='https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/taylor'/> <apps:property name='requestId' value='22405'/> <apps:property name='destUserName' value='taylor'/> <apps:property name='beginDate' value='2022-06-20 00:00'/> <apps:property name='endDate' value='2022-07-30 23:20'/> <apps:property name='incomingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='outgoingEmailMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='draftMonitorLevel' value='FULL_MESSAGE'/> <apps:property name='chatMonitorLevel' value='FULL_MESSAGE'/> </entry> </feed>
Java
import com.google.gdata.client.appsforyourdomain.audit.AuditService; import com.google.gdata.data.appsforyourdomain.generic.GenericFeed; ... AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1"); GenericFeed feed = service.retrieveMonitors("amal");
.NET
using System; using System.Collections.Generic; using Google.GData.Apps; using Google.GData.Extensions.Apps; ... AuditService service = new AuditService("example.com", "example.com-auditapp-v1"); service.setUserCredentials("admin@example.com", "p@55w0rd"); GenericFeed<MailMonitor> monitors = service.RetrieveMailMonitors("amal");
メールモニターを削除する
メールモニターを削除するには、Authorization
ヘッダーを含めて、モニター フィードの削除 URI への HTTP DELETE
リクエストを実行します。
DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME/DESTINATION_USERNAME
以下を置き換えます。
DOMAIN_NAME
: Google Workspace のドメイン名(例: example.com)。SOURCE_USERNAME
: 削除するメールモニターのユーザー名。DESTINATION_USERNAME
: 監査対象のメール メッセージを受信する監査者。
メールモニターを削除する例
この例では、destinationUserName
を izumi
としてユーザー amal@example.com
用に作成されたモニターを削除します。
プロトコル
DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi
Java
import com.google.gdata.client.appsforyourdomain.audit.AuditService; ... AuditService service = new AuditService("admin@example.com", "p@55w0rd", "example.com", "example.com-auditapp-v1"); service.deleteMonitor("amal", "izumi");
.NET
using System; using Google.GData.Apps; using Google.GData.Extensions.Apps; ... AuditService service = new AuditService("example.com", "example.com-auditapp-v1"); service.setUserCredentials("admin@example.com", "p@55w0rd"); service.DeleteMailMonitor("amal", "izumi");