Untuk menyiapkan pemantauan email dengan Email Audit API, administrator menetapkan rentang tanggal bagi auditor untuk menerima salinan email yang dikirim dan diterima pengguna tertentu sebagai lampiran. Jumlah maksimum permintaan pembuatan dan penghapusan pemantauan per hari adalah 1.000 permintaan. Batas ini berlaku per domain, dan mencakup semua permintaan yang dibuat oleh administrator mana pun sepanjang hari.
Skenario email yang dipantau mencakup tiga jenis pengguna:
Administrator — Semua administrator domain dapat membuat, mengambil, memperbarui, dan menghapus pemantau email menggunakan resource pemantauan Email Audit API. Selain itu, administrator dapat menggunakan API untuk mendownload kotak surat. Operasi ini hanya dapat dilakukan dalam domain yang dikontrol oleh administrator.
Pengguna sumber — Pengguna sumber adalah pengguna yang menerima atau mengirim pesan yang diaudit oleh pengguna tujuan pemantauan. Setiap administrator domain atau pengguna akun dapat menjadi pengguna sumber. Pengguna sumber harus berada di domain yang sama dengan administrator dan pengguna tujuan.
Pengguna tujuan — Pengguna tujuan adalah auditor yang menerima pesan email yang diaudit.
- Menerima salinan karbon buta (Bcc) semua pesan email masuk dan keluar, termasuk lampiran masuk dan keluar, pesan yang diteruskan, serta pesan email yang dikirim dari perangkat seluler.
- Sebagai opsi, administrator domain dapat mengaktifkan fitur audit tambahan untuk pengguna tujuan. Fitur opsional ini meliputi pengauditan draf email yang disimpan, pengauditan chat Hangouts yang diarsipkan dengan pengguna lain yang dapat berada di dalam atau di luar domain.
- Meskipun pengguna tujuan menerima salinan pesan Bcc, pengaitan Bcc tidak terlihat dalam header pesan yang dapat diakses di akun pengguna sumber.
- Setiap pesan email yang diaudit dikirim ke pengguna tujuan sebagai lampiran email. Dan administrator domain dapat mengonfigurasi pesan-pesan ini menjadi pesan email lengkap atau hanya header pesan.
- Pengguna tujuan ini harus memiliki akun email yang aktif di domain yang dipantau. Domain ini harus sama dengan domain yang dikaitkan dengan administrator dan pengguna sumber.
- Pengguna tujuan dapat menjadi administrator atau pengguna dalam domain. Selain itu, pengguna tujuan ini dapat beralih peran agar menjadi pengguna sumber yang diaudit oleh pengguna tujuan lain yang kemudian menerima salinan semua pesan email yang diaudit yang dikirim ke pengguna tujuan pertama.
- Administrator domain membuat satu pemantau email yang diaudit untuk satu pasangan unik 'pengguna tujuan - pengguna sumber'. Dengan kata lain, hubungan audit adalah satu pengguna tujuan ke satu pengguna sumber. Setiap audit dilakukan menggunakan resource pemantauan API. Dengan menggunakan beberapa pemantau API, pengguna tujuan dapat mengaudit banyak pengguna di domain. Selain itu, dengan menggunakan beberapa monitor API, banyak pengguna tujuan dapat mengaudit satu pengguna sumber.
- Jika monitor API tambahan dibuat atau pemantau API yang sudah ada diperbarui untuk pasangan 'pengguna tujuan - pengguna sumber', monitor yang terakhir dibuat akan menggantikan monitor yang sudah ada sebelumnya untuk pasangan ini. Pada dasarnya, ini adalah cara Anda mengupdate pemantau API. Untuk informasi selengkapnya tentang mengupdate pemantau, lihat Mengupdate pemantau email.
Membuat pemantau email
Untuk membuat pemantau email, kirim permintaan POST
berikut dengan resource pemantauan email:
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
Ganti hal berikut:
DOMAIN_NAME
: nama domain Google Workspace—misalnya, example.com.SOURCE_USERNAME
: nama pengguna yang ingin Anda pantau.
Permintaan POST
berisi header Content-type
berikut:
Content-type: application/atom+xml
Untuk mengetahui daftar lengkap parameter yang akan digunakan dalam permintaan pemantau email, lihat Resource: monitor
.
Contoh pembuatan monitor baru
Contoh ini menggunakan parameter berikut:
- Pengguna yang akan diaudit adalah
amal@example.com
. destUserName
adalahizumi
.beginDate
adalahJune 15, 2022, 00:00 hours
.endDate
adalahJune 30, 2022, 23:20 hours
.incomingEmailMonitorLevel
adalahFULL_MESSAGE
.outgoingEmailMonitorLevel
adalahHEADER_ONLY
.draftMonitorLevel
adalahFULL_MESSAGE
.chatMonitorLevel
adalahFULL_MESSAGE
.
Protocol
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>
Jika berhasil, server akan menampilkan kode status 201 CREATED
dan
entri AtomPub dengan elemen entry
yang menampilkan setelan
monitor baru:
<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);
Memperbarui pemantau email
Saat mengupdate monitor dengan pengguna sumber dan pengguna tujuan yang sama, setelan properti monitor awal akan diganti dengan setelan baru.
Untuk memperbarui konfigurasi audit di pemantau email, kirim permintaan POST
ke URI feed monitor dan sertakan header Authorization
:
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
Ganti hal berikut:
DOMAIN_NAME
: nama domain Google Workspace—misalnya, example.com.SOURCE_USERNAME
: nama pengguna pemantau email yang ingin Anda perbarui.
Contoh untuk memperbarui pemantau email
Contoh ini memperbarui monitor yang dibuat dalam contoh untuk membuat pemantau email dengan memperbarui properti wajib endDate
dan chatMonitorLevel
properti opsional. Contoh ini menggunakan parameter berikut:
endDate
baru adalahAugust 30, 2022, 23:20 hours
.chatMonitorLevel
sekarang menjadiHEADER_ONLY
.- Pengguna yang akan diaudit tetap
amal@example.com
. destUserName
tetap berupaizumi
.
Properti monitor yang tidak diperbarui akan dikembalikan ke nilai defaultnya. Misalnya, dalam contoh ini, properti incomingEmailMonitorLevel
dan
outgoingEmailMonitorLevel
dikembalikan ke FULL_MESSAGE
, dan
draftMonitorLevel
kembali ke NONE
.
Protocol
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>
Jika berhasil, server akan menampilkan kode status 201 CREATED
dan
entri AtomPub dengan elemen entry
yang telah diupdate. Properti
yang tidak diperbarui dan ditampilkan dalam respons akan dikembalikan ke nilai defaultnya.
<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);
Mengambil semua pemantau email pengguna sumber
Untuk mengambil semua monitor yang terkait dengan pengguna sumber, buat permintaan GET
HTTP ke URI feed monitor, menggunakan format UTC untuk tanggal, dan sertakan
header Authorization
:
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
Ganti hal berikut:
DOMAIN_NAME
: nama domain Google Workspace—misalnya, example.com.SOURCE_USERNAME
: nama pengguna pemantau email yang ingin Anda ambil.
Operasi ini tidak memiliki parameter dalam isi permintaan, sehingga isi XML kosong.
Contoh untuk mengambil semua pemantau email
Contoh ini mengambil semua monitor yang dibuat untuk pengguna amal@example.com
:
Protocol
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal
Jika berhasil, server akan menampilkan kode status 201 CREATED
dan feed AtomPub dengan elemen entry
untuk dua monitor yang menampilkan setelan untuk dua pengguna tujuan (izumi@example.com,
taylor@example.com
).
<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");
Menghapus pemantau email
Untuk menghapus pemantau email, buat permintaan DELETE
HTTP ke URI penghapusan feed
pemantau dan sertakan header Authorization
:
DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME/DESTINATION_USERNAME
Ganti hal berikut:
DOMAIN_NAME
: nama domain Google Workspace—misalnya, example.com.SOURCE_USERNAME
: nama pengguna pemantau email yang ingin Anda hapus.DESTINATION_USERNAME
: auditor yang menerima pesan email yang diaudit.
Contoh untuk menghapus pemantau email
Contoh ini menghapus monitor yang dibuat untuk pengguna amal@example.com
dengan destinationUserName
sebagai izumi
.
Protocol
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");