Monitorowanie e-maili

Aby skonfigurować monitorowanie poczty e-mail za pomocą interfejsu Email Audit API, administrator ustawia zakres dat, w którym audytor może otrzymywać kopie e-maili wysłanych i odebranych przez konkretnego użytkownika w postaci załącznika. Maksymalna liczba żądań utworzenia i usunięcia monitorów dziennie to 1000 żądań. Ten limit dotyczy domeny i obejmuje wszystkie żądania wysłane przez dowolnego administratora w ciągu dnia.

Scenariusz monitorowania poczty e-mail obejmuje 3 typy użytkowników:

  • Administrator – każdy administrator domeny może tworzyć, pobierać, aktualizować i usuwać monitor poczty e-mail przy użyciu zasobu monitorowania interfejsu Email Audit API. Oprócz tego administrator może pobrać skrzynkę pocztową za pomocą interfejsu API. Te działania można wykonywać tylko w domenie, nad którą kontroluje administrator.

  • Użytkownik źródłowy – użytkownik źródłowy to użytkownik, który odbiera lub wysyła wiadomości sprawdzane przez użytkownika docelowego monitorowania. Użytkownikiem źródłowym może być każdy administrator domeny lub użytkownik konta. Użytkownik źródłowy musi być w tej samej domenie co administrator i użytkownik docelowy.

  • Użytkownik docelowy – użytkownik docelowy to audytor, który otrzymuje kontrolowane e-maile.

    • Odbiera kopie ukryte (UDW) wszystkich przychodzących i wychodzących wiadomości e-mail, w tym przychodzących i wychodzących załączników, wiadomości przekierowanych oraz e-maili wysłanych z urządzeń mobilnych.
    • Administrator domeny może też włączyć dodatkowe funkcje kontroli dla użytkownika docelowego. Opcjonalne funkcje obejmują sprawdzanie zapisanych wersji roboczych e-maili i zarchiwizowanych czatów w Hangouts z innymi użytkownikami, którzy mogą znajdować się w domenie i poza nią.
    • Mimo że użytkownik docelowy otrzyma kopię ukrytą wiadomości, powiązanie UDW nie będzie widoczne w nagłówkach wiadomości dostępnych na koncie użytkownika źródłowego.
    • Każda skontrolowana wiadomość e-mail jest wysyłana do użytkownika docelowego jako załącznik do e-maila. Administrator domeny może skonfigurować te wiadomości jako pełne lub tylko nagłówki.
    • Ten użytkownik docelowy musi mieć aktywne konto e-mail w monitorowanej domenie. Musi to być ta sama domena powiązana z administratorem i użytkownikiem źródłowym.
    • Użytkownikiem docelowym może być administrator lub użytkownik w domenie. Użytkownik docelowy może zmienić role, aby zostać użytkownikiem źródłowym sprawdzanym przez innego użytkownika docelowego, który z kolei otrzymuje kopie wszystkich skontrolowanych e-maili wysyłanych do pierwszego użytkownika docelowego.
    • Administrator domeny tworzy jeden kontrolowany monitor poczty e-mail dla jednej niepowtarzalnej pary „użytkownik docelowy – użytkownik źródłowy”. Inaczej mówiąc, relacja między jednym użytkownikiem docelowym a kontrolą wynosi 1 użytkownik źródłowy. Każda kontrola jest wykonywana przy użyciu zasobu monitorowania interfejsów API. Korzystając z wielu monitorów interfejsów API, użytkownik docelowy może kontrolować wielu użytkowników w domenie. A korzystając z wielu monitorów interfejsów API, wielu użytkowników docelowych może kontrolować jednego użytkownika źródłowego.
    • W przypadku utworzenia dodatkowego monitora interfejsów API lub zmodyfikowania istniejącego monitora dla pary „użytkownik docelowy – użytkownik źródłowy” monitor, który został ostatnio utworzony, zastępuje wszystkie istniejące monitory tej pary. Zasadniczo właśnie w ten sposób aktualizujesz monitor interfejsów API. Więcej informacji o aktualizowaniu monitora znajdziesz w artykule Aktualizowanie monitora poczty e-mail.

Utworzenie monitora poczty e-mail

Aby utworzyć monitor poczty e-mail, wyślij to żądanie POST z zasobem monitor adresu e-mail:

POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME

Zastąp następujące elementy:

  • DOMAIN_NAME: nazwa domeny Google Workspace, na przykład example.com.
  • SOURCE_USERNAME: nazwa użytkownika, którą chcesz monitorować.

Żądanie POST zawiera ten nagłówek Content-type:

Content-type: application/atom+xml

Pełną listę parametrów, które można użyć w żądaniu monitorowania poczty e-mail, znajdziesz w artykule Zasoby: monitor.

Przykład tworzenia nowego monitora

W przykładzie użyto tych parametrów:

  • Użytkownik do kontroli to amal@example.com.
  • Nowa wartość „destUserName” to izumi.
  • Nowa wartość „beginDate” to June 15, 2022, 00:00 hours.
  • Nowa wartość „endDate” to June 30, 2022, 23:20 hours.
  • Nowa wartość „incomingEmailMonitorLevel” to FULL_MESSAGE.
  • Nowa wartość „outgoingEmailMonitorLevel” to HEADER_ONLY.
  • Nowa wartość „draftMonitorLevel” to FULL_MESSAGE.
  • Nowa wartość „chatMonitorLevel” to FULL_MESSAGE.

Protokół

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>

Jeśli operacja się uda, serwer zwróci kod stanu 201 CREATED i wpis AtomPub z elementem entry wskazującym nowe ustawienia monitora:

<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);

Zaktualizowanie monitora poczty e-mail

Podczas aktualizowania monitora z tym samym użytkownikiem źródłowym i docelowym ustawienia usługi monitora początkowego są zastępowane nowymi ustawieniami.

Aby zaktualizować konfigurację kontroli w monitorze poczty e-mail, wyślij żądanie POST do identyfikatora URI kanału monitorowania i dołącz nagłówek Authorization:

POST https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME

Zastąp następujące elementy:

  • DOMAIN_NAME: nazwa domeny Google Workspace, na przykład example.com.
  • SOURCE_USERNAME: nazwa użytkownika monitora poczty e-mail, który chcesz zaktualizować.

Przykład aktualizowania monitora poczty e-mail

Ten przykład aktualizuje monitor utworzony w przykładzie tworzenia monitora poczty e-mail przez zaktualizowanie wymaganej właściwości endDate i właściwości opcjonalnej chatMonitorLevel. W tym przykładzie użyto następujących parametrów:

  • Nowa endDate to August 30, 2022, 23:20 hours.
  • Cena chatMonitorLevel wynosi teraz HEADER_ONLY.
  • Użytkownik objęty kontrolą to amal@example.com.
  • destUserName pozostaje izumi.

Właściwości monitorowania, które nie zostały zaktualizowane, zostaną przywrócone do wartości domyślnych. W tym przykładzie właściwości incomingEmailMonitorLevel i outgoingEmailMonitorLevel przywracają wartości FULL_MESSAGE, a draftMonitorLevel – do wartości NONE.

Protokół

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>

Jeśli operacja się uda, serwer zwróci kod stanu 201 CREATED i wpis AtomPub ze zaktualizowanymi elementami entry. Właściwości, które nie zostały zaktualizowane i wyświetlone w odpowiedzi, zostaną przywrócone do wartości domyślnych.

<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);

Pobierz wszystkie monitory poczty e-mail użytkownika źródłowego

Aby pobrać wszystkie monitory powiązane z użytkownikiem źródłowym, wyślij żądanie HTTP GET do identyfikatora URI kanału monitorowania, podając datę w formacie UTC i dołącz nagłówek Authorization:

GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME

Zastąp następujące elementy:

  • DOMAIN_NAME: nazwa domeny Google Workspace, na przykład example.com.
  • SOURCE_USERNAME: nazwa użytkownika z monitora poczty, który chcesz pobrać.

Ta operacja nie ma parametrów w treści żądania, więc treść XML jest pusta.

Przykład pobierania wszystkich monitorów poczty e-mail

Ten przykład pobiera wszystkie monitory utworzone dla użytkownika amal@example.com:

Protokół

GET https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/example.com/amal

Jeśli operacja się uda, serwer zwróci kod stanu 201 CREATED i plik danych AtomPub z elementami entry dla 2 monitorów przedstawiających ustawienia 2 użytkowników docelowych (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");

Usunięcie monitora poczty e-mail

Aby usunąć monitor poczty e-mail, wyślij żądanie HTTP DELETE do identyfikatora URI usuwania kanału monitorowania i dołącz nagłówek Authorization:

DELETE https://apps-apis.google.com/a/feeds/compliance/audit/mail/monitor/DOMAIN_NAME/SOURCE_USERNAME/DESTINATION_USERNAME

Zastąp następujące elementy:

  • DOMAIN_NAME: nazwa domeny Google Workspace, na przykład example.com.
  • SOURCE_USERNAME: nazwa użytkownika monitora poczty e-mail, który chcesz usunąć.
  • DESTINATION_USERNAME: audytor, który odbiera skontrolowane e-maile.

Przykład usuwania monitora poczty e-mail

W tym przykładzie usuwane są monitory utworzone dla użytkownika amal@example.com, w którym destinationUserName ma wartość izumi.

Protokół

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");