Per configurare il monitoraggio delle email con l'API Email Audit, un amministratore imposta un intervallo di date in modo che il revisore riceva una copia delle email inviate e ricevute da un determinato utente come allegato. Il numero massimo di richieste di creazione e cancellazione di monitor al giorno è 1000. Questo limite si applica a ogni dominio e include tutte le richieste effettuate da qualsiasi amministratore durante il giorno.
Uno scenario di email monitorato include tre tipi di utenti:
Amministratore: qualsiasi amministratore di dominio può creare, recuperare, aggiornare ed eliminare un monitoraggio email utilizzando la risorsa di monitoraggio dell'API Email Audit. Inoltre, un amministratore può utilizzare l'API per scaricare la cassetta postale. Queste operazioni possono essere eseguite solo all'interno del dominio su cui l'amministratore esercita il controllo.
Utente di origine: l'utente di origine è l'utente che riceve o invia i messaggi sottoposti a controllo dall'utente di destinazione del monitoraggio. Qualsiasi amministratore del dominio o utente dell'account può essere un utente di origine. L'utente di origine deve appartenere allo stesso dominio dell'amministratore e dell'utente di destinazione.
Utente di destinazione: l'utente di destinazione è l'auditor che riceve i messaggi email sottoposti a controllo.
- Riceve le copie nascoste (Ccn) di tutti i messaggi email in entrata e in uscita, inclusi gli allegati in entrata e in uscita, i messaggi inoltrati e i messaggi email inviati da dispositivi mobili.
- Se vuoi, un amministratore di dominio può attivare funzionalità di controllo aggiuntive per l'utente di destinazione. Le funzionalità facoltative includono il controllo delle bozze di email salvate, il controllo delle chat di Hangouts archiviate con altri utenti che possono trovarsi all'interno o all'esterno del dominio.
- Anche se l'utente di destinazione riceve una copia Ccn del messaggio, l'associazione Ccn non è visibile nelle intestazioni dei messaggi accessibili nell'account dell'utente di origine.
- Ogni messaggio email sottoposto a controllo viene inviato all'utente di destinazione come allegato email. L'amministratore del dominio può configurare questi messaggi in modo che siano il messaggio email completo o solo le intestazioni del messaggio.
- Questo utente di destinazione deve avere un account email attivo nel dominio monitorato. Deve essere lo stesso dominio associato all'amministratore e all'utente di origine.
- Un utente di destinazione può essere un amministratore o un utente all'interno del dominio. Inoltre, questo utente di destinazione può cambiare ruolo e diventare un utente di origine sottoposto a controllo da parte di un altro utente di destinazione che, a sua volta, riceve copie di tutti i messaggi email sottoposti a controllo inviati al primo utente di destinazione.
- Un amministratore di dominio crea un monitoraggio email sottoposto a controllo per una singola coppia "utente di destinazione - utente di origine". In altre parole, il rapporto di controllo è un utente di destinazione e un utente di origine. Ogni controllo viene eseguito utilizzando una risorsa di monitoraggio dell'API. Utilizzando più monitor API, un utente di destinazione può controllare molti utenti nel dominio. Inoltre, utilizzando più monitor API, molti utenti di destinazione possono controllare un utente di origine.
- Se viene creato un altro monitoraggio API o se viene aggiornato un monitoraggio API esistente per una coppia "utente di destinazione - utente di origine", il monitoraggio che è stato creato per ultimo sostituisce tutti i monitor preesistenti per questa coppia. In sostanza, è così che aggiorni un monitoraggio API. Per ulteriori informazioni sull'aggiornamento di un monitoraggio, consulta Aggiornare un monitoraggio email.
Creare un monitoraggio email
Per creare un monitoraggio email, invia la seguente richiesta POST
con la risorsa monitoraggio email:
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
Sostituisci quanto segue:
DOMAIN_NAME
: il nome di dominio Google Workspace, ad esempio example.com.SOURCE_USERNAME
: il nome utente che vuoi monitorare.
La richiesta POST
contiene la seguente intestazione Content-type
:
Content-type: application/atom+xml
Per un elenco completo dei parametri da utilizzare in una richiesta di monitoraggio email, consulta
Risorse: monitor
.
Esempio per la creazione di un nuovo monitor
L'esempio utilizza i seguenti parametri:
- L'utente da controllare è
amal@example.com
. - Il valore
destUserName
èizumi
. - Il valore
beginDate
èJune 15, 2022, 00:00 hours
. - Il valore
endDate
èJune 30, 2022, 23:20 hours
. - Il valore
incomingEmailMonitorLevel
èFULL_MESSAGE
. - Il valore
outgoingEmailMonitorLevel
èHEADER_ONLY
. - Il valore
draftMonitorLevel
èFULL_MESSAGE
. - Il valore
chatMonitorLevel
èFULL_MESSAGE
.
Protocollo
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>
Se l'operazione riesce, il server restituisce un codice di stato 201 CREATED
e una voce AtomPub con l'elemento entry
che mostra le nuove impostazioni del monitoraggio:
<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);
Aggiornare un monitoraggio email
Quando aggiorni un monitoraggio con lo stesso utente di origine e lo stesso utente di destinazione, le impostazioni della proprietà del monitoraggio iniziale vengono sostituite dalle nuove impostazioni.
Per aggiornare la configurazione del controllo in un monitoraggio email, invia una richiesta POST
all'URI del feed del monitoraggio e includi l'intestazione Authorization
:
POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
Sostituisci quanto segue:
DOMAIN_NAME
: il nome di dominio Google Workspace, ad esempio example.com.SOURCE_USERNAME
: il nome utente del monitoraggio email che vuoi aggiornare.
Esempio di aggiornamento di un monitoraggio email
Questo esempio aggiorna il monitoraggio creato nell'esempio per la creazione di un monitoraggio email aggiornando la proprietà obbligatoria endDate
e la proprietà facoltativa chatMonitorLevel
. Questo esempio utilizza i seguenti parametri:
- Il nuovo
endDate
èAugust 30, 2022, 23:20 hours
. chatMonitorLevel
ora èHEADER_ONLY
.- L'utente da sottoporre a controllo rimane
amal@example.com
. - Il valore
destUserName
rimaneizumi
.
Le proprietà del monitoraggio che non sono state aggiornate tornano ai valori predefiniti. Ad esempio, in questo esempio le proprietà incomingEmailMonitorLevel
e outgoingEmailMonitorLevel
tornano a FULL_MESSAGE
e draftMonitorLevel
torna a NONE
.
Protocollo
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>
In caso di esito positivo, il server restituisce un codice di stato 201 CREATED
e una voce AtomPub con gli elementi entry
aggiornati. Le proprietà
che non sono state aggiornate e mostrate nella risposta tornano ai valori predefiniti.
<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);
Recuperare tutti i monitor email di un utente di origine
Per recuperare tutti i monitor associati a un utente di origine, invia una richiesta HTTP GET
all'URI del feed del monitor, utilizzando il formato UTC per la data e includendo
l'intestazione Authorization
:
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME
Sostituisci quanto segue:
DOMAIN_NAME
: il nome di dominio Google Workspace, ad esempio example.com.SOURCE_USERNAME
: il nome utente del monitoraggio email che vuoi recuperare.
Questa operazione non ha parametri nel corpo della richiesta, pertanto il corpo XML è vuoto.
Esempio per il recupero di tutti i monitor email
Questo esempio recupera tutti i monitor creati per l'utente amal@example.com
:
Protocollo
GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal
In caso di esito positivo, il server restituisce un codice di stato 201 CREATED
e un feed AtomPub con gli elementi entry
per due monitor che mostrano le impostazioni per due utenti di destinazione (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");
Eliminare un monitoraggio email
Per eliminare un monitoraggio email, invia una richiesta HTTP DELETE
all'URI di eliminazione del feed del monitoraggio e includi l'intestazione Authorization
:
DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME/DESTINATION_USERNAME
Sostituisci quanto segue:
DOMAIN_NAME
: il nome di dominio Google Workspace, ad esempio example.com.SOURCE_USERNAME
: il nome utente del monitoraggio email che vuoi eliminare.DESTINATION_USERNAME
: l'auditor che riceve i messaggi email sottoposti a controllo.
Esempio per l'eliminazione di un monitoraggio email
Questo esempio elimina i monitor creati per l'utente amal@example.com
con destinationUserName
come izumi
.
Protocollo
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");