Untuk menyiapkan pemantauan email dengan Email Audit API, administrator menetapkan rentang tanggal bagi auditor untuk menerima salinan email yang dikirim dan diterima oleh pengguna tertentu sebagai lampiran. Jumlah maksimum permintaan pembuatan dan penghapusan monitor per hari adalah 1.000 permintaan. Batas ini berlaku per domain, dan mencakup semua permintaan yang dibuat oleh administrator selama sehari.
Skenario email yang dipantau mencakup tiga jenis pengguna:
Administrator — Setiap administrator domain dapat membuat, mengambil, memperbarui, dan menghapus pemantau email menggunakan resource pemantau 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 sedang 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 blind carbon copy (Bcc) dari semua pesan email masuk dan keluar, termasuk lampiran masuk dan keluar, pesan yang diteruskan, dan pesan email yang dikirim dari perangkat seluler.
- Sebagai opsi, administrator domain dapat mengaktifkan fitur audit tambahan untuk pengguna tujuan. Fitur opsional mencakup audit draf email tersimpan, audit chat Hangouts yang diarsipkan dengan pengguna lain yang dapat berada di dalam atau di luar domain.
- Meskipun pengguna tujuan menerima salinan Bcc pesan, atribusi Bcc tidak terlihat di header pesan yang dapat diakses di akun pengguna sumber.
- Setiap pesan email yang diaudit dikirim ke pengguna tujuan sebagai lampiran email. Selain itu, administrator domain dapat mengonfigurasi 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 terkait dengan administrator dan pengguna sumber.
- Pengguna tujuan dapat berupa administrator atau pengguna dalam domain. Selain itu, pengguna tujuan ini dapat beralih peran menjadi pengguna sumber yang diaudit oleh pengguna tujuan lain yang, pada gilirannya, menerima salinan semua pesan email yang diaudit yang dikirim ke pengguna tujuan pertama.
- Administrator domain membuat satu pemantau email yang diaudit untuk satu pasangan 'pengguna tujuan - pengguna sumber' yang unik. Dengan kata lain, hubungan audit adalah satu pengguna tujuan ke satu pengguna sumber. Setiap audit dilakukan menggunakan resource monitor API. Dengan menggunakan beberapa monitor 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 monitor API yang ada diperbarui untuk pasangan 'pengguna tujuan - pengguna sumber', monitor yang dibuat terakhir akan menggantikan monitor yang sudah ada untuk pasangan ini. Pada dasarnya, ini adalah cara Anda mengupdate pemantau API. Untuk informasi selengkapnya tentang cara memperbarui pemantau, lihat Memperbarui pemantau email.
Membuat pemantau email
Untuk membuat pemantau email, kirim permintaan POST
berikut dengan resource pemantau email:
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME /SOURCE_USERNAME
Ganti kode berikut:
DOMAIN_NAME
: nama domain Google Workspace—misalnya, contoh.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 pemantauan email, lihat
Referensi: monitor
.
Contoh untuk membuat 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
.
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>
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);
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 memperbarui monitor dengan pengguna sumber dan pengguna tujuan yang sama, setelan properti monitor awal akan diganti dengan setelan baru.
Untuk memperbarui konfigurasi audit di pemantauan email, kirim permintaan POST
ke URI feed pemantauan dan sertakan header Authorization
:
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME /SOURCE_USERNAME
Ganti kode berikut:
DOMAIN_NAME
: nama domain Google Workspace—misalnya, contoh.com.SOURCE_USERNAME
: nama pengguna pemantauan email yang ingin Anda perbarui.
Contoh untuk memperbarui pemantau email
Contoh ini memperbarui monitor yang dibuat dalam
contoh untuk membuat monitor email
dengan memperbarui properti yang diperlukan endDate
dan properti opsional
chatMonitorLevel
. 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 menjadiizumi
.
Properti monitor yang tidak diperbarui akan dikembalikan ke nilai defaultnya. Misalnya, dalam contoh ini, properti incomingEmailMonitorLevel
dan
outgoingEmailMonitorLevel
kembali ke FULL_MESSAGE
, dan
draftMonitorLevel
kembali ke 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>
Jika berhasil, server akan menampilkan kode status 201 CREATED
dan
entri AtomPub dengan elemen entry
yang diperbarui. 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>
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);
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 kode berikut:
DOMAIN_NAME
: nama domain Google Workspace—misalnya, contoh.com.SOURCE_USERNAME
: nama pengguna pemantauan email yang ingin Anda ambil.
Operasi ini tidak memiliki parameter dalam isi permintaan, sehingga isi XML kosong.
Contoh untuk mengambil semua monitor email
Contoh ini mengambil semua monitor yang dibuat untuk pengguna amal@example.com
:
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>
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");
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 kode berikut:
DOMAIN_NAME
: nama domain Google Workspace—misalnya, contoh.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
.
DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal/izumi
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");
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");